トップ回答者
テキストファイルの埋め込みと読み出し

質問
-
すみません、是非教えてください。
Microsoft Visual C# 2010 使用。C#の勉強中です。
簡単なクイズアプリケーションを作成しています。
問題と解答をテキストデータに書き、下記のように、現在外部のテキストデータを
読み込んで実行しています。string FDATA = "c:\\00.txt";
StreamReader sr = new StreamReader(FDATA, System.Text.Encoding.Default);このデータを、ビルド時に埋め込んでしまいたいと思っています。
(C:\\から読み込まない)
リソースの登録はなんとなくできたみたいなのですが、この埋め込んだデータを
読み込んで使用するための記述はどのようにすればよろしいでしょうか?よろしくお願いします。
回答
-
- 編集済み NF64 2011年10月30日 14:35
- 回答としてマーク John.J.Rambo 2011年10月31日 12:00
すべての返信
-
- 編集済み NF64 2011年10月30日 14:35
- 回答としてマーク John.J.Rambo 2011年10月31日 12:00
-
同じ内容なので相互にリンク。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=62725
質問スレッドで解決した場合は、解決の参考になった投稿に対して「回答としてマーク」のボタンを押すことで、同じ問題に遭遇した別のユーザが役立つ投稿を見つけやすくなります。 -
蛇足かもしれませんが、C#を勉強中ということですので、Microsoft SQL Server Compactをひょっとしてご存じないかもしれないと思い、ご紹介しておきます。このデータベースはアプリケーションと共に配布できますので、このデータベースに問題と解答を保存するようにすれば、アプリケーションの汎用性は上がると思います。
Microsoft SQL Server Compact 4.0
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=033CFB76-5382-44FB-BC7E-B3C8174832E2C#の勉強の続きとして、次のステップの目標にされると良いと思います。問題と解答を読み込むだけでしたら、簡単なSQL文のみで大丈夫です。具体的にはselect文のみで実現できるでしょう。
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/ -
度々失礼しました。
そうですね、コードを書いたほうがいいですね。下記のとおりに修正して実験しました。
プロジェクト名 propro修正前のソース(正常動作)
string FNAME = "c:\\koData.txt";
StreamReader sr = new StreamReader(FNAME, System.Text.Encoding.Default);
修正後のソース(エラー)
System.Reflection.Assembly myAssembly =
System.Reflection.Assembly.GetExecutingAssembly();System.IO.StreamReader srr =
new System.IO.StreamReader(
myAssembly.GetManifestResourceStream("propro.koData.txt"),
System.Text.Encoding.GetEncoding("shift-jis"));string s = srr.ReadToEnd();
StreamReader sr = new StreamReader(s, System.Text.Encoding.Default);
よろしくお願いします。
-
お世話になります。
下記ページに記載されている方法で思い通りの動作が確認できました。
http://homepage3.nifty.com/midori_no_bike/CS/index.html?filesys.167
いろいろ教えていただきありがとうございました。
また、これからもわからないことが多々出てくると思います。
ご協力いただければ幸いです。