回 帖 发 新 帖 刷新版面

主题:麻烦大虾给指点一下

请帮我看下,我想编写一个能区别出两个TXT文件内容的程序,但由于技术太低,不知道怎么编写
区别和找出区别的部分,麻烦大虾指点一下,谢谢![em18]

回复列表 (共6个回复)

沙发

下面的函数能判断两个文件的内容是否相同,但不能列出区别的部分:

Function CompFile(f1 As String, f2 As String) As Boolean
Dim issame As Boolean
issame = True

Open f1 For Binary As #1
Open f2 For Binary As #2

If LOF(1) <> LOF(2) Then
  issame = False
Else
  whole& = LOF(1) \ 10000 '取整数 10,000 字节为一个字块
  part& = LOF(1) Mod 10000 '剩余字节 at end of file
  buffer1$ = String$(10000, 0)
  buffer2$ = String$(10000, 0)
  start& = 1
  For x& = 1 To whole& 'this for-next loop will get 10,000
    Get #1, start&, buffer1$ '字块 at a time.
    Get #2, start&, buffer2$
    If buffer1$ <> buffer2$ Then issame = False: Exit For
    start& = start& + 10000
  Next
  buffer1$ = String$(part&, 0)
  buffer2$ = String$(part&, 0)
  Get #1, start&, buffer1$ '获取剩余字节 at the end
  Get #2, start&, buffer2$ '获取剩余字节 at the end
  If buffer1$ <> buffer2$ Then issame = False
End If
Close
CompFile = issame
End Function

板凳

谢谢!确定文件是否不同我已经做到了,但找出来不同之处这块怎么编呢?

3 楼

split 按行分 判断

4 楼

能详细点吗?
谢谢!

5 楼

如果是比较两个文本文件,则很简单:
1.先将两个文本文文件分别读入到两个字符型变量,例如ST1、ST2
2.在For循环中逐个字符对比两个变量,有不同的就在文本框中显示出来
3.如果文本很大,用字符对比法就很慢了,这时可采用字节型数组读入并在For循环中比较。

6 楼

哦 这下明白了  谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册