当前位置:编程学习 > VB >>

VB提取多个TXT文件中每一行数据,存入新文件

有多个文件每一个文件有12行数据,第一列为月份,如其中一个为 1 2 3 4 5 2 2 3 4 5 3 2 3 4 5 4 2 3 4 5 5 2 3 4 5 ... 12 2 3 4 5 将每一个文件同一个月的数据放在一起,如”1月.txt“文件里的数据为每一个文件1月的数据
补充:不会打开多个文件存,我一个文件打开,重复12次才能存12个月的数据,因为另存的文件名不一样。如何打开一个文件存12次呢?
Open "j:\TEMP\50425.txt" For Input As #5
Open "J:\TEMP2\3月.txt " For Output As #6
追问:试了一下,读应该有错误,写出文件都没有数值,麻烦再看一下能不能修改一下,把第一行数据先读掉?
答案:Private Sub Command1_Click()
Dim Fname(1 To 3) As String    '文件名
Dim i As Integer
Dim j As Integer
Dim L As Integer
Dim dH() As String   '存放一行内容的字符串变量
Dim n As Integer
'这里举例3个文件,要多的文件自己想办法,方法形式可以很多
Fname(1) = "1.txt"
Fname(2) = "2.txt"
Fname(3) = "3.txt"
'读文件
n = 0
For i = 1 To 3
   Open App.Path & "\" & CStr(i) & ".txt" For Input As #1    '打开文件读。
      Do While Not EOF(1)   ' 循环至文件尾。
         n = n + 1
         ReDim Preserve dH(1 To n) As String
         Input #1, dH(n)   ' 将数据读入变量。
      Loop
   Close #1
Next i
 
'写文件
For i = 1 To 12
   Open App.Path & "\" & CStr(i) & "月.txt" For Output As #1    '打开文件写
      For j = 1 To n
         L = InStr(dH(j), " ")
         If Val(Left(dH(j), L - 1)) = i Then
            Print #1, dH(i)
         End If
      Next j
   Close #1
Next i
 
End Sub
其他:可以参考下http://zhidao.zhaoxi.net/question/267121895.html,建议使用数组,读一次存一次,然后保存,数组清空,继续
 
思路是这样的:
open filename for input #1 ‘打开第一个文件
Do While Not EOF(1)
Line Input #1, sTemp
List1.AddItem  sTemp
'对  sTemp进行字符处理 自己写出来
Loop
close #1

上一个:请问给位朋友如何用hp1600 打印特殊纸张!(210mm*680mm)
下一个:VB程序问题

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,