标题:如何同时读入一个文件夹中的所有TXT文本,并把结果写入同一个文本 请教我是 ...
只看楼主
菜鸟新上路
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2008-9-15
结帖率:60%
 问题点数:0 回复次数:21 
如何同时读入一个文件夹中的所有TXT文本,并把结果写入同一个文本 请教我是菜鸟哦版主
一个文件夹中有200个文本,我要提取所有文本中的一个数据,并巴这些数据输出到同一个文本中  ,请问是如何读取所有文本的,然后怎样输出的同一个文本中

[[it] 本帖最后由 菜鸟新上路 于 2008-9-26 15:57 编辑 [/it]]
搜索更多相关主题的帖子: 文件 文本 TXT 结果 
2008-09-26 08:14
菜鸟新上路
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2008-9-15
得分:0 
请留言
怎么那么多大侠路过,没有一个留言的?在这个互相帮助的大家庭里,请让我感到温馨吧!

[[it] 本帖最后由 菜鸟新上路 于 2008-9-26 09:23 编辑 [/it]]
2008-09-26 09:22
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
得分:0 
For Each File In Files集合
  提取File中的数据,追加
End For

输出数据
2008-09-26 13:28
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
得分:0 
还是那个,读取每个文本的具体位置吗?

偶是菜鸟鸟偶惧WHO?!!!!
2008-09-26 19:55
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
得分:0 
要代码还是具体的EXE

偶是菜鸟鸟偶惧WHO?!!!!
2008-09-26 20:54
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
得分:0 
一个COMMAND 一个FILELISTBOX(将PATTERN属性设置为*.txt) 将生成的EXE放入你那个都是文本的文件夹里边,然后会在D:生成你想要的文本,原来每个文本的隔6行的内容用*****隔开,不想要*自己删了就行,(这个是读取每个文本的具体行再输入新文本中,这个应该以前给你说过的)

如果文本过大的话,等待时间较长,所以command只点一下就OK

Option Explicit

Private Sub Command1_Click() '写文件
Dim s As String
Dim i As Integer
Dim flag As Integer
flag = 0

For i = 0 To File1.ListCount - 1

Open File1.List(i) For Input As #1


  Do While Not EOF(1) '读取每个文本隔6行的内容,然后输入到D盘123.txt
     Line Input #1, s
      If flag Mod 6 = 0 Then
        Open "D:\123.txt" For Append As #2
              Print #2, s
        Close #2
      End If
      flag = flag + 1
  Loop


Close #1
flag = 0

Open "D:\123.txt" For Append As #2
Print #2, "*************************************************"
Close #2
Next i


End Sub

[[it] 本帖最后由 我是菜鸟哦 于 2008-9-27 10:20 编辑 [/it]]

偶是菜鸟鸟偶惧WHO?!!!!
2008-09-26 20:57
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
得分:0 
又看了下,你说的不明白,是先整体输入一个文本再取具体行,还是反之???

总之,代码原理都差不多

偶是菜鸟鸟偶惧WHO?!!!!
2008-09-26 21:44
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
得分:0 
[bo][un]我是菜鸟哦[/un] 在 2008-9-26 21:44 的发言:[/bo]

又看了下,你说的不明白,是先整体输入一个文本再取具体行,还是反之???

总之,代码原理都差不多

他似乎还需要对每个文件进行提取数据的操作,最后输出的是提取的数据,估计代码还要再变一变

你这个边读入边输出的思想值得平时写程序的时候借鉴。
2008-09-26 22:54
baroques_solari
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-9-23
得分:0 
真巧 我前几天也需要做类似的事情…
贴一段我的好了
我也是菜鸟 很多地方写得很笨 各位高手见笑了

先从txt中读取字符串并赋给一组变量
Dim s(1 To 48) As String * 1200
Open "D:\GC-FID-PID\graphdat\1.txt" For Binary As #1
Get #1, , s(1)         '从文件中获取字节
Close #1               '关闭文件

然后根据需要截取其中需要的字符串
譬如我需要截取文本中“BIN”和“MeanRT”中间的部分
然后输出
……
For q = 1 To 48
    bb(q) = InStr(s(q), "BIN")
    dd(q) = InStr(s(q), "MeanRT")        
    runbegin(q) = bb(q) - 9
    runend(q) = dd(q) - bb(q) + 22
    cc(q) = Mid(s(q), runbegin(q), runend(q))
    a.writeline (cc(q))
Next q

其中很多细节可能需要摸索
msdn中很多东西很有价值~

祝好

[[it] 本帖最后由 baroques_solari 于 2008-9-26 23:20 编辑 [/it]]
2008-09-26 23:18
菜鸟新上路
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2008-9-15
得分:0 
拜谢 我是菜鸟哦 版主 和各位大侠
最近一直在忙工作的事情 今天刚看一下 大家对我帮助这么多  我自己也要努力动脑筋  版主和一位大侠的代码对我很有用   我自己想到的代码和大家的差不多  但是没有组织好
2008-09-27 15:56



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




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

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