CSV ファイルに含めることができる最大行数は?
私の要件は最大数のエントリを許可することなので、具体的な数を知りたいです。この数はオペレーティング システムに依存しますか?それともサイズは固定ですか?
CSV ファイルに含めることができる最大行数は?
私の要件は最大数のエントリを許可することなので、具体的な数を知りたいです。この数はオペレーティング システムに依存しますか?それともサイズは固定ですか?
CSVはテキスト形式です。ファイル サイズ、列数、行数に正式な制限はありません。「正式な」ステートメントが必要な場合、最も公式な仕様はRFC4180です。
ファイルを読み取るファイル システムとプログラムは、独自の制限を課すことができます。つまり、すばやく作成されたツールの多くは、2Gb を超えるサイズのファイルを正しく処理できず (整数サイズの制限)、最初にコンテンツをメモリに読み込む多くのツールがメモリの制限に達します。
@Alexeiの回答に追加して、合計行数を見つけるために使用できることを指定したいと思いますBinaryReader
(2GBを超えるファイルの場合)。
BinaryReader reader = new BinaryReader(File.OpenRead(@"C:\test.csv"));
char lastChar = reader.ReadChar();
char newChar = new char();
int lineCount = 0;
do
{
newChar = reader.ReadChar();
if (lastChar == '\r' && newChar == '\n')
{
lineCount++;
}
lastChar = newChar;
} while( reader.PeekChar() != -1);