• 締切済み

【C#】特定の改行コードのみで1行ずつ取得したい

C#でツールを作成しています。 テキストファイルの中を1行ずつ読み取りたいです。 ただし、改行コード \r\n と \n が混在しており、 \r\n までを1行として取得したいのです。 ReadToEndで一旦すべての文字列を取得し、 Split("\r\n")で分割という方法で解決はするのですが ファイルサイズが膨大な場合、どうしても処理が重くなってしまいます。 ReadLineなどで上手くできる方法はないでしょうか? よろしくお願いします。

みんなの回答

  • dekopa-
  • ベストアンサー率42% (161/378)
回答No.1

バイナリで読み取り、一定サイズ毎のバッファに切り出して、そのバッファに\r\nがあればそこまで(と、その前までの読み込み結果)をbyte[]からStringに変換すればいいんじゃないでしょうか? 以前、JIS78コードをあつかったときに似たような事をやりました。

参考URL:
http://sonic64.com/2005-08-04.html

専門家に質問してみよう