中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结]如何比较两文件将不同的两行另外输出到文本呢?
作者:
标题: [已结]如何比较两文件将不同的两行另外输出到文本呢? 上一主题 | 下一主题
huzixuan
高级用户




积分 537
发帖 219
注册 2006-10-31
来自 芜湖
状态 离线
『楼 主』:  [已结]如何比较两文件将不同的两行另外输出到文本呢?

如何写一个vbs,比较两文件将不同的两行另外输出到文本呢?

新文本如下:
第 N 行的异处:

"a文本的某行"
"b文本的某行"


第 N 行的异处:

"a文本的某行"
"b文本的某行"


...
a文件已读完(/b文件已读完),b文件剩余N行不进行比较(/a文件剩余N行不进行比较)

[ Last edited by huzixuan on 2007-10-30 at 08:08 PM ]



江湖远
碧空长
路茫茫

    一个人漫无目的的奔跑,风,刺骨的冷....
2007-10-29 21:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 2 楼』:  

a文件每一行用数组a(n),b文件每一行用数组b(n),然后比较输出

2007-10-30 09:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 3 楼』:  


set fso=createobject("scripting.filesystemobject")
set file=fso.opentextfile("a.txt")
na=file.readall
file.close
set file=fso.opentextfile("b.txt")
nb=file.readall
file.close
sa=split(na,vbcrlf):la=ubound(sa)
sb=split(nb,vbcrlf):lb=ubound(sb)
if la<lb then
    for i=0 to la
        if sa(i)<>sb(i) then
            sn=sn & sa(i) & vbcrlf & sb(i) & vbcrlf
        end if
    next
else
        for i=0 to lb
        if sa(i)<>sb(i) then
            sn=sn & sa(i) & vbcrlf & sb(i) & vbcrlf
        end if
    next
end if
wscript.echo sn


   此帖被 +4 点积分        点击查看详情   
评分人:【 huzixuan 分数: +4  时间:2007-10-30 20:07


2007-10-30 09:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 4 楼』:  

数组的下标有没有最大值??

2007-10-30 10:48
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: