本人的毕业设计。
我有数字水准仪的测量数据文件,为Text格式的文件。数据量比较大。现要逐行读取数据,并提取相应信息,输出到新的TEXT文件中。文件数据如图所示(三张图片的数据)上图所示,只需提取其中第2,3,4,7,9列的数据,其余的均不要上图所示,只需要提取其中第一行,最后三行,及其他所有行中的例如KZD2,KYD3,2,3,4等的点号,所有的Rb和Rf,所有的单位为米(m)的数据第三张图,为第二张图的补充
补充个说明一下,所需要的数据怎么提取到新的Text文件中,并输出。
请好心人帮忙,求大神求解答,万分感谢!!!
我有数字水准仪的测量数据文件,为Text格式的文件。数据量比较大。现要逐行读取数据,并提取相应信息,输出到新的TEXT文件中。文件数据如图所示(三张图片的数据)上图所示,只需提取其中第2,3,4,7,9列的数据,其余的均不要上图所示,只需要提取其中第一行,最后三行,及其他所有行中的例如KZD2,KYD3,2,3,4等的点号,所有的Rb和Rf,所有的单位为米(m)的数据第三张图,为第二张图的补充
补充个说明一下,所需要的数据怎么提取到新的Text文件中,并输出。
请好心人帮忙,求大神求解答,万分感谢!!!
解决方案 »
- 三个月没来了,上来向大家打个问个好。散分~~~~
- 谁有用vsflexgrid控件作为表格,大批量录入数据的例子?
- 有关imagecombo和imagelist的问题
- 怎么在自己的程序里使用资源管理器的文件夹树?
- 哪位大虾用过sqlDMO.SQLServer这个引用呢?
- 初学VB,不小心把属性窗口拉得有屏幕那么宽,想还原,可是怎么试也没成,请教
- 在定义子函数时,用sub 函数名()和function 函数名()有什么区别?
- 谁详细看过CSDN上的VISDATA程序,谈谈感受!
- 为什么现在回复帖子总不正常?
- 跪求:想更改程序的显示设备分辨率
- 按文件名,批量提取不同excel文件名下固定单元格数据
- 纯的不能在纯的新手求救呀~~~
读出一行后,用Split按TAB拆分成数组,
直接取数组中对应的值就行了。加上必要的判断,就OK了。
一 打开文件
Dim strLine As String, strItem() As String
Open "yourdata.txt" For Input As #1
Open "newfile.txt" For Output As #2
Do Until EOF(1)
‘这里处理数据
Loop
Close #2
Close #1二 处理方法,以你第一图的情况为例
Line Input #1, strLine
strLine = Replace(strLine, vbTab, Space(1)) ’将所有制表符替换为空格
strLine = Replace(strLine, “|", Space(1)) ’将所有竖线替换为空格
Do While InStr(strLine, Space(2)) '去掉多余的空格
strLine = Replace(strLine, Space(2), Space(1))
Loop
strItem = Split(strLine, Space(1))
If Ubound(strItem) > 7 Then
strLine = strItem(1) & vbTab & strItem(2) & strItem(3) & vbTab & strItem(6) & vbTab & strItem(8)
Print #2, strLine
End If
问题是,你怎知他只有 vbTab 分隔?要是还有多个空格呢?还有竖线呢?你如何保证分出的元素都是字段?
从它的第2、3张图来看,感觉就不是用vbTab分隔的,并且空格还不能作为分隔符。
我感觉那两张图中的内容,是竖线分隔、补空格对齐的。
所以不能把“拆分列”的事情想得太简单。