在vbscript中比较2个文件

在vbscript中比较2个文件,vbscript,Vbscript,我有两个文件,我想看看里面的内容是否相等。假设其中一个是文本文件,如Sample1.txt,另一个是不同的文件,如main.css。我如何比较这两个文件,看看里面的内容是否相同 我在想 Content1 = FSO.OpenTextFile(sample.txt).ReadAll Content2 = FSO.OpenTextFile(main.css).ReadAll if(Content1 = Content2) Then End IF 有没有更好的办法 谢谢如果您只是对文件是否不同感

我有两个文件,我想看看里面的内容是否相等。假设其中一个是文本文件,如Sample1.txt,另一个是不同的文件,如main.css。我如何比较这两个文件,看看里面的内容是否相同

我在想

Content1 = FSO.OpenTextFile(sample.txt).ReadAll
Content2 = FSO.OpenTextFile(main.css).ReadAll
if(Content1 = Content2) Then


End IF
有没有更好的办法


谢谢

如果您只是对文件是否不同感兴趣,最简单的方法是:


这取决于你对better的看法。如果它们很大,你可以先检查它们的大小(不同的大小->不同的内容)。出于同样的原因,您可能不需要在内存中读取所有字符,逐个字符的比较可能对您有用(您甚至可能决定忽略某些差异,例如双换行符)。请注意,逐个字符可能不适用于Unicode代理,因此逐行比较可能是更好的解决方案。我认为最好使用专用的diff程序,例如WinDiff,甚至FC命令(如果它们仍然存在的话)如果我必须使用
fc
我会将文本文件与
/u
进行比较,而不是
/b
(特别是如果我不关心大小写)但我更愿意不使用它:如果我只需要知道它们是否不同,我不必看到/计算所有的差异。我尝试了上面的代码,但它总是返回-1,即使文件是否更改…我将路径传递给文件是参数,这是一个网络文件,文件的一个是文本文件,另一个可以是css或者js或其他一些扩展文件。我只需要查看内部内容是否相同或不同。对于不同的文件,获取
True
(-1),对于相同的文件,获取
False
(0)。网络驱动器或本地驱动器没有区别。对不起,我的不好。这个答案是正确的,非常棒。谢谢
Function qq(str)
  qq = Chr(34) & str & Chr(34)
End Function

Function AreDifferent(f1, f2)
  cmd = "%COMSPEC% /c fc /b " & qq(f1) & " " & qq(f2)
  AreDifferent = CBool(CreateObject("WScript.Shell").Run(cmd, 0, True))
End Function