質問: **質問内容** ファイルの読み込み書き込み操作をするときに、どんな処理が基本的に必要なのかを教えてください。 **補足** 今回ご教示していただきたい内容は、コードではなく処理の内容です。 **取り扱うファイル** テキストファイルを扱います。 データ量としては10行くらいです。 記述された文字列を読み込んで画面に表示したり、変更した内容をファイルに書き込んだりします。 ただ自分の中ではテキストファイル以外(バイナリファイル等)であっても、基本的に求められる処理は同じなのかなと思っているので、テキストファイルを適正に操作する方法を学べば他のファイルも扱えるのかなと思っています。 勘違いしていたらすいません。 **自分で思いつく処理内容** 自分の中では以下のような操作で十分なのかなと思っていますが、ほかにも必要な処理があればご教示ください。 まだ扱ったことは無いのですがデッドロックや大容量のデータの扱いについては、今回は除外しています。 ・ファイルを読み込む処理 1、読み込むファイルを指定する。 2、指定されたファイルが存在するかを確認する。 3、ファイルが存在しない場合は、仕様に応じてエラーメッセージを表示するか、プログラム側で新規に作成する。 4、読み込むファイルをロックする。 5、ファイルを読み込む。 6、読み込みが終了したらロックを外す。 7、読み込んだデータを画面に表示する処理をする。 ・データをファイルに書き込む処理 1、書き込むファイルを指定する。 2、指定されたファイルが存在するかを確認する。 3、ファイルが存在しない場合は、仕様に応じてエラーメッセージを表示するか、プログラム側で新規に作成する。 4、書き込むファイルをロックする。 5、ファイルにデータを書き込む 6、書き込みが終了したらロックを外す。 7、終了
回答: 本来は、そういう面倒な処理やるのだけど、テキストファイルに関しては、大体は、 File.ReadLines https://msdn.microsoft.com/ja-jp/library/dd383503(v=vs.110).aspx File.WriteAllText https://msdn.microsoft.com/ja-jp/library/ms143375(v=vs.110).aspx を使えばよくて、せいぜい、 対象ファイルの存在確認、をして、 とりあえず、ファイル処理をしているところをTry Catchで囲んで例外処理をするくらいで十分です。 読み込むファイルをロックとかは、勝手にやってくれることなので、気にしなくていいです。 やっていることを、知っているのは重要ですけど。 (たまにはまるので、エクセルとかで) また、Using文を使うことで、解放処理を勝手にやるので、Using文を使うところでちゃんと使いましょう。