ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

CSVファイルを読み込む

.NETにはCSV形式のファイルを読み込むクラスTextFieldParserが用意されている。

using Microsoft.VisualBasic.FileIO;

public void CSVFileRead(string filename) {
    TextFieldParser parser =
        new TextFieldParser(filename,
               System.Text.Encoding.GetEncoding("Shift_JIS"));

    using (parser) {
        // 区切り文字を,に指定
        parser.SetDelimiters(",");

        while(!parser.EndOfData) {
            // 1行読み込み
            string[] row = parser.ReadFields();
            // 文字列の配列に格納されているのを表示
            foreach (string field in row) {
                Console.WriteLine(field);
            }
        }
    }
}

しかし、Visual C# Express Editionでビルドしようとしたところ、FileIOが見つからないというエラーが。これはアセンブリ参照が足りないために起きるエラー。
そこで、ソリューションエクスプローラでプロジェクトの参照設定のところを右クリックして、参照の追加メニューからMicrosoft.VisualBasicを追加。これでビルドできるようになった。


参考:http://www.atmarkit.co.jp/fdotnet/dotnettips/487csvparser/csvparser.html