ふらっと C#,C♯,C#(初心者用) Part146

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 9f0b-Fgt1)
垢版 |
2019/12/11(水) 22:12:11.28ID:d09CciDz0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part145
https://mevius.5ch.net/test/read.cgi/tech/1570446977/
■関連スレ
C#, C♯, C#相談室 Part95
https://mevius.5ch.net/test/read.cgi/tech/1508168482/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/

■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2デフォルトの名無しさん (ワッチョイ 1524-Fgt1)
垢版 |
2019/12/11(水) 22:32:15.34ID:mMKqVbip0
C#
3デフォルトの名無しさん (ワイーワ2 FFfa-uKDx)
垢版 |
2019/12/12(木) 09:41:18.58ID:a67Hqgb2F
O2
4デフォルトの名無しさん (ワッチョイ 06b0-DoXq)
垢版 |
2019/12/12(木) 14:29:42.64ID:56xY8w560
ひらがな文字列をヘボン式ローマ字に変換するプログラム作りたいのですが
やっぱ正攻法でswitch-caseで123個くらい分岐させますか?
でも長音や促音の例外処理とか難しそうだなあ・・・
5デフォルトの名無しさん (エムゾネ FF02-uKDx)
垢版 |
2019/12/12(木) 14:47:29.26ID:b3wcvAqBF
変換テーブルと検索
2019/12/12(木) 17:38:52.89ID:OYDho7HG0
UNIXのShellのソースでコマンドを切り分ける場所では思いっきりswitch文の嵐だったな
1文字目でまず切り分けで、次にに文字目ってな具合で

速度なら圧倒的にswitch分だと思うが、作りやすかったり保守が簡単なのはDictionary使ったパターンだと思う
2019/12/12(木) 17:42:49.22ID:NIaj3T140
要素数が多くなれば多くなる程switch文よりDictionaryの方が速度的にも早くなるのでは?
2019/12/12(木) 17:52:34.02ID:VQC2yHD50
つ libstree
2019/12/12(木) 18:32:36.61ID:Ijd1d2r8M
>>7
C#コンパイラは多数の分岐先を持つswitchの場合には二分探索を行うコードを生成したりする
基本的に人間が最適化するより速い
10デフォルトの名無しさん (ワッチョイ 06b0-DoXq)
垢版 |
2019/12/12(木) 19:09:09.93ID:56xY8w560
>>4です
ありがとうございます
switchでコツウコツやることにします
要素の数え漏れでもっと増えそうだし
例外を拾う処理も考えなきゃww
2019/12/12(木) 19:47:35.25ID:XSG0K+ND0
vs2017ExpressでC#のフォームを使ってSQLiteのデータをDataGridViewに表示させたいです
セキュリティの関係でSystem.data.SQLiteを使うには申請が必要でMicrosoft.data.SQLiteを使っています
SQLiteをデータソース欄に追加する方法を教えてもらえないでしょうか?
2019/12/12(木) 21:16:54.09ID:XSG0K+ND0
ソース貼り忘れました
https://dotnetfiddle.net/DXwCTe
よろしくお願いします
13デフォルトの名無しさん (アウウィフ FF3b-EbeN)
垢版 |
2019/12/13(金) 10:16:06.63ID:V90d9jYdF
いくら払えますか
2019/12/13(金) 11:41:55.37ID:D/hLKfPDd
>>13
自宅でSystem.data.SQLiteをインストールして同じコードを書いたらデータベースに接続出来ました
恐らくSQLiteConnection等の参照が足りずにエラーなっていると思いますが、解決策が思い浮かばなかったのでSQL Serverを使って試したいと思います
申し訳ありません
15デフォルトの名無しさん (スフッ Sd02-cBt2)
垢版 |
2019/12/13(金) 12:10:09.33ID:SSw9bcJtd
Microsoft Visual Studio International Feature Pack を使うんだ!
KanaConversion クラスだったかに RomajiToHiragana メソッドがあったと思う
16デフォルトの名無しさん (ブーイモ MM13-RobM)
垢版 |
2019/12/13(金) 17:23:20.97ID:f86+e1mZM
>>10

亀レスで申し訳ないが、正規表現と Dictionary と LINQ を使えば 5 行くらいで書けるよ。

var kana = “あ|い|う|え|お|か|き|く|け|こ”;
var roman = “A|I|U|E|O|Ka|Ki|Ku|Ke|Ko”;
var dic = kana.Split(‘|’).Zip(roman.Split(‘|’), (l, r) => new { Key = l, Value = r}).ToDictionary( x => x.Key, x => x.Value );

Console.WriteLine(Regex.Replace(original_string, $”({kana})”, match => dic[match.Value]));
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況