我编写了这段代码来计算文本文件中的字符数:
sr.BaseStream.Position = 0;
sr.DiscardBufferedData();
int Ccount = 0;
while (sr.Peek() != -1)
{
sr.Read();
Ccount++;
}
Run Code Online (Sandbox Code Playgroud)
但将此代码应用于文件后包含:
1
2
3
4
5
6
7
8
9
0
Run Code Online (Sandbox Code Playgroud)
Ccount = 30 ???? 为什么?我在我的Macbook上的虚拟盒上使用Windows Xp所使用的程序:Microsoft Visual Basic 2010.
Sin*_*ian 15
在Windows中,每个新行包含两个字符\r和\n.您有10行,每行有1个可见字符和2个新行字符,最多可添加30个字符.
如果您在Mac或Unix/Linux中创建了文件,则会产生不同的结果(20个字符).因为Unix只使用\n而Mac只\r用于新行.
您可以使用一些编辑器(如Notepad ++)向您显示新行字符,甚至可以在不同模式(DOS/Unix/Mac)之间切换.
| 归档时间: |
|
| 查看次数: |
49247 次 |
| 最近记录: |