找回密码
 立即注册

QQ登录

只需一步,快速开始

教程经验总索引TVMW5/小日本5 索引【视频转换】小日本4/TE4XP 索引【视频转换】TAW4 / TDA3 索引【DVD打包软件】
Nero 索引DVD-Lab 索引【DVD打包软件】编解码器 索引 【必读】固顶帖011号
查看: 5410|回复: 2

[教程] 删除文本文件中相同的行VBS代码

[复制链接]

9328

威望

308

金钱

1万

贡献

管理员

自由的灵魂

积分
99887
主题
5265
回帖
26224
注册时间
2003-4-10
最后登录
2024-4-30
发表于 2009-3-31 13:35:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 IsaacZ 于 2009-6-19 02:16 编辑

删除文本文件中相同的行!
如果不使用数据库,怎么样才能删除文本文件中相同的行呢?手工?!!10w行的记录你试试手工!??
下面这个脚本演示了如果删除 文本文件中 相同的行!
  1. Const adOpenStatic = 3
  2. Const adLockOptimistic = 3
  3. Const adCmdText = &H0001

  4. Set objConnection = CreateObject("ADODB.Connection")
  5. Set objRecordSet = CreateObject("ADODB.Recordset")
  6. Const ForReading = 1, ForWriting = 2, ForAppending = 8


  7. strPathToTextFile = "D:"
  8. strFile = "done.txt"

  9. objConnection.Open "rovider=Microsoft.Jet.OLEDB.4.0;" & _
  10. "Data Source=" & strPathtoTextFile & ";" & _
  11. "Extended Properties=""text;HDR=NO;FMT=Delimited"""

  12. objRecordSet.Open "Select DISTINCT * FROM " & strFile, _
  13. objConnection, adOpenStatic, adLockOptimistic, adCmdText

  14. Do Until objRecordSet.EOF
  15. str = objRecordSet.Fields.Item(0).Value
  16. Dim fso, f
  17. Set fso = CreateObject("Scripting.FileSystemObject")
  18. Set f = fso.OpenTextFile("D:\namelist.txt", ForAppending, True)
  19. f.WriteLine str
  20. f.Close

  21. objRecordSet.MoveNext
  22. Loop
复制代码
D:\done.txt 是原始文件
D:\namelist.txt 是生成后的文件


把上面这些代码,复制到一个txt文件中,修改成你所要的功能

另存为 *.vbs 后缀名就可以了!


来源:删除文本文件中相同的行
用vbscript实现从文本文件中删除所有重复行的代码

IsaacZ注:本代码有问题,出错提示:


Windows Script Host

脚本: D:\a.vbs
行: 25
字符: 1
错误: 类型不匹配: 'WriteLine'
代码: 800A000D
源:  Microsoft VBScript 运行时错误

推荐最好的移除重复行解决方案:
【原创】使用Editplus删除文本文件中的重复行
IsaacZ的发言中如果提到任何字母缩写或专有名词,在本论坛中一般都能搜索到。点此立即搜索点拨论坛。如有搜索不到的,请尝试搜索百度百科,或者跟帖提问。
发帖前请注意看置顶帖。如果你发现自己的问题没有得到回答,说明你的问题提错了地方或者提问前未先阅读本版规则固顶帖011号

0

威望

170

金钱

0

贡献

新手上路

积分
172
主题
0
回帖
76
注册时间
2009-3-3
最后登录
1970-1-1
发表于 2009-4-21 17:47:45 | 显示全部楼层
看不懂,真的不懂
回复

使用道具 举报

9328

威望

308

金钱

1万

贡献

管理员

自由的灵魂

积分
99887
主题
5265
回帖
26224
注册时间
2003-4-10
最后登录
2024-4-30
 楼主| 发表于 2009-4-21 20:27:25 | 显示全部楼层
我也不是太懂,备用而已,找时间再测试一下。
IsaacZ的发言中如果提到任何字母缩写或专有名词,在本论坛中一般都能搜索到。点此立即搜索点拨论坛。如有搜索不到的,请尝试搜索百度百科,或者跟帖提问。
发帖前请注意看置顶帖。如果你发现自己的问题没有得到回答,说明你的问题提错了地方或者提问前未先阅读本版规则固顶帖011号
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|点拨论坛

GMT+8, 2024-5-1 04:26 , Processed in 0.070111 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表