启嘟渡科技商贸有限公司
SEARCH

与我们合作

我们专注提供互联网一站式服务,助力企业品牌宣传多平台多途径导流量。
主营业务:网站建设、移动端微信小程序开发、营销推广、基础网络、品牌形象策划等

您也可通过下列途径与我们取得联系:

微 信: wxyunyingzhe

手 机: 15624122141

邮 箱:

请帮仔细解析一下代码,功能是:删除重复文本

更新时间:2025-01-18 08:51:54

Private Sub Form_Load()

thepath = "c:\1.txt" '设置文本文件的路径

Open thepath For Input As #1

Open Left(thepath, Len(thepath) - 4) & "修改后.txt" For Output As #2

ReDim a(0) '重新定义a数组最大下标为0

i = 0

If Not EOF(1) Then '如果文件没有已经到尾部 则

Line Input #1, a(i) '从【文件1】读取一行,到数组元素a(i)(a(i)其实就是一个字符串变量)

Print #2, a(i) '将读取的那行写入【文件2】

i = i + 1 '数组标号加一

ReDim Preserve a(i) '将数组标号最大值扩大到i(注意,这里的i已经是加过1了的)

Do While Not EOF(1) '如果文件没有到尾部 则

Line Input #1, a(i) '从【文件1】读取一行,到数组元素a(i)

ifex = False '表示没有相同文字

For j = 0 To i - 1 '循环,从流程分析,此时i至少为1,所以这里i-1大于或等于0

If a(j) = a(i) Then ifex = True: Exit For '循环比较已经保存在数组中的文字是否与当前的文字(即a(i))相同,若相同则ifex=True(表示相同),退出循环

Next

If Not ifex Then '如果,经过比较,刚刚提取的a(i)与之前的a(0)到a(i-1)都不相同,则

Print #2, a(i) '在【文件2】中保持经过验证与先前内容不重复的那句,即保持a(i)

i = i + 1 '数组标号加1

ReDim Preserve a(i) '将数组标号最大值扩大到i(注意,这里的i已经是加过1了的)

End If

Loop '循环尾部,只有文件1读取完了才会执行loop后面的语句,否则,回到上一个do处继续循环

MsgBox "修改成功,新文件路径为:" & Left(thepath, Len(thepath) - 4) & "修改后.txt"

End If

Close #1 '关闭文件1

Close #2 '关闭文件2

End Sub

【够详细吧,能给分最好!3q】

多重随机标签

猜你喜欢文章

QQ客服 电话咨询