2009-09-25 148 views
2

我通过将两个文件读入文件流并逐字节比较来比较两个文件。如何在比较时跳过空格?我使用C#.NET比较两个文件

+0

你可以发布你现有的代码,我们可以提供更改吗? – MPritchard 2009-09-25 11:05:16

+0

如果你不想自己做比较。您可以在Windows中使用FC.exe工具,使用/ W(压缩/忽略空白)开关 – 2009-09-25 11:26:19

+0

为了正确执行此操作,您必须知道文件的编码。它是在一些代码页中编码的7位ASCII,UTF-8,UTF-16,是什么? – 2009-09-25 14:21:42

回答

3
byte b; 

// .... 

if (Char.IsWhiteSpace((char) b)) 
{ 
    // skip... 
} 

编辑:作为埃里克利珀指出,如果该文件的编码是普通7位ASCII,这是唯一正确的。在任何其他编码中,它将跳过相关的字节。所以,你应该考虑到你的数据的编码。

+1

这只有在文件的编码是纯7位ASCII码时才是正确的。在任何其他编码中,它将跳过相关的字节。 – 2009-09-25 14:20:53

+0

@Eric Lippert:你好,海报说他在比较字节,但你是正确的;他应该考虑到编码。 – 2009-09-25 14:33:22