C# 一个CSV文件可以包含多少行?

C# 一个CSV文件可以包含多少行?,c#,C#,CSV文件可以包含的最大行数是多少 我想知道一个具体的数字,因为我的要求是允许最大数量的条目。 此数字取决于操作系统,还是大小固定?CSV是文本格式。文件大小、列数或行数没有正式限制。最正式的规范是你是否想要一些“正式”的声明 读取文件的文件系统和程序可以施加自己的限制。也就是说,许多快速编写的工具无法正确处理大于2Gb的文件(整数大小限制),许多首先将内容读取到内存的工具将达到内存限制。添加到@Alexei answer中,我想指定您可以使用它来查找总行数(对于大于2Gb的文件) 除非最后一行

CSV文件可以包含的最大行数是多少

我想知道一个具体的数字,因为我的要求是允许最大数量的条目。
此数字取决于操作系统,还是大小固定?

CSV是文本格式。文件大小、列数或行数没有正式限制。最正式的规范是你是否想要一些“正式”的声明


读取文件的文件系统和程序可以施加自己的限制。也就是说,许多快速编写的工具无法正确处理大于2Gb的文件(整数大小限制),许多首先将内容读取到内存的工具将达到内存限制。

添加到@Alexei answer中,我想指定您可以使用它来查找总行数(对于大于2Gb的文件)


除非最后一行末尾没有\r或\n,否则此操作非常有效。我添加了一个charCount变量,如果if子句为false,我会增加该变量。如果有新行,我将此计数重置为零。然后在Do之后的最后,我检查charCount的值。如果大于0,则存在另一个结尾没有\r的行,我会增加行数
 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);