プログラマーな日々

プログラマーをやっています。好きなものは、C#, TaskChute Cloud, WorkFlowy, Backlog, AWSです。

TextFieldParserの厄介な挙動

Microsoft.VisualBasic.FileIO.TextFieldParserは便利ですが、厄介な挙動があり、ReadFieldsメソッドは区切り文字だけの行(つまりすべてのフィールドが空の行)に対してnullを返します。できれば要素ゼロの配列を返してほしいところです。

思いついた対策を挙げておきます。

  • 事前にチェックする
  • ReadFieldsの後にnullチェックをする
  • ReadFieldsの代わりにReadLineを使用する。

ちなみにこの挙動はドキュメントには記載されていません。
TextFieldParser.ReadFields メソッド
現在の行にあるすべてのフィールドを読み込み、それを文字列の配列として返して、カーソルを次のデータを含む行に進めます。 ...