2010-09-27 68 views

回答

0

你只需要知道它们是否完全一样?如果是这样,您可以将它们加载到内存中并比较.length()属性...

+0

当然你所说的是完全正确的。假设在第二个文件中我有一些代码之间的空间,然后如何去除这些东西。 – 2010-09-27 13:08:17

0

从技术上讲,如果一个文件包含额外的空间,它们就不是“相同的”。我首先比较长度,如果不匹配,则需要逐字节比较。如果你想删除多余的空格,你可能会首先在两个文件的内容上做一些像Trim()一样的操作。

这里是一个老MS帖子的链接描述了如何创建一个文件比较功能:

http://support.microsoft.com/kb/320348

1

由于JavaScript是空白宽容(容忍空白的任何量,只要语法是正确的),如果要比较的一切空白是最简单的事情做正则表达式替换:

Regex _r = new Regex(@"\s+", RegexOptions.Compiled); 
string result = _r.Replace(value, " "); 

运行这两个文件,并比较将R esults;它用一个空格替换任何标准空白字符序列(空格,制表符,回车符,垂直制表符等)。然后,您可以与Equals进行比较(根据需要区分大小写)。

当然,空格在字符串内部是很重要的,所以这里假设所有比较文件中的字符串处理都不太依赖空白。

但是,两个非常不同的代码文件可以具有相同的效果,所以如果这是您在您面前艰难工作之后所要做的。