标题:vb 实现两个txt查找重复内容
只看楼主
小兰灵
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2019-12-10
结帖率:0
已结贴  问题点数:20 回复次数:4 
vb 实现两个txt查找重复内容
有a.txt和b.txt
a.txt内容
FAI1
FAI2
FAI3
FAI4
FAI5
FAI6
b.txt内容
FAI4   15.01  0.01  0.02
FAI5   20.1  0.01  0.05
FAI6   18    0.05  0.07
以a来查找b的内容
如果没有相同内容则清除b.txt里的内容
搜索更多相关主题的帖子: 查找 txt vb 重复 内容 
2019-12-10 20:00
小兰灵
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2019-12-10
得分:0 
Open "c:\a.txt" For Input As #1
Do While Not EOF(1)  
   n = n + 1
    ReDim Preserve MyStr1(n)
    Line Input #1, MyStr1(n)  
Loop
 Close #1
用这种方法不行呢,求各位多多指教!!!

[此贴子已经被作者于2019-12-10 20:06编辑过]

2019-12-10 20:04
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:20 
Open "c:\a.txt" For Input As #1
Do While Not EOF(1)  
   n = n + 1
    ReDim Preserve MyStr1(n)
    Line Input #1, MyStr1(n)  
Loop
 Close #1
Open "c:\b.txt" For Input As #1
open "c:\~c.txt" For output As #2
Do While Not EOF(1)  
line input #1,TmpS       '读一行
if len(tmps)>3 then      '如果超过3字符则继续处理。用于容错,如果3改成0,那就只判断空行。
isyn = false             '默认不存在
tmps1=left(tmps,4)                    '固定长度用这个
'tmps1=left(tmps,instr(1,tmps," "))    '不固定长度用这个
for i=1 to ubound(mystr1())        '查找循环
   if tmps1=mystr1(i) then         '找到
      isyn=true
      exit for
   end if
next i
if isyn then             '是否找到,找到则将写入,否则忽略,就会丢弃该行。
   print #2,tmps
end if
else           '空行,及小于3字符的内容原样写入,自己决定。
   print #2,tmps
end if
Loop
close #2
 Close #1
kill "c:\b.txt"                    '删原文件,
name  "c:\~c.txt","c:\b.txt"      '改名。调试时,不要用这二行。会破坏原文件,导致调试无法进行。
-------------------------------

授人于鱼,不如授人于渔
早已停用QQ了
2019-12-10 20:27
小兰灵
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2019-12-10
得分:0 
回复 3楼 风吹过b
我试试
2019-12-10 20:36
小兰灵
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2019-12-10
得分:0 
2019-12-11 09:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498330-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.215670 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved