vb读取txt文件中某行某列的数据

zczhi_121 2015-05-03 08:11:22
有以下文件名为d:\111.txt的文件:

111 2222 33 4444 555 6666 ......
999 888 7777 666 5555 444 ......
aaaa bbb cc ddd eeee fffff ......
qq wwww eee rrr tt yyyy uu ......
......

以上数据共200多行,如以空格进行分割的话,每行100多个数据,但每组数据字符长度不等。
现在请问如何读取某行某列的数据,如第3行第4列值在textbox中显示为“ddd”,代码如何实现?
...全文
6733 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
m0_37635830 2017-05-11
  • 打赏
  • 举报
回复
能给下解决的代码吗?急
zczhi_121 2015-05-11
  • 打赏
  • 举报
回复
谢谢以上三位,圆满的解决了我的问题,谢谢!
of123 2015-05-04
  • 打赏
  • 举报
回复
可以很简单:

Private Sub Get_Line_Column_Data(Byval LineNum As Long, Byval ColumnNum As Long)
Dim strLine As String, strCol() As String, i As Long

i = 1
Open "D:\111.txt" For Input As #1
Do Until EOF(1)
    Line Input #1, strLine
    If i = LineNum Then 
        strCol = Split(strLine, Space(1))
        If ColumnNum <= Ubound(strCol) + 1
            Text1 = strCol(ColumnNum - 1)
        Else
            Text1 = "Bad Column Number"
        End If
    End If
    i = i + 1
Loop
If i < LineNum Then Text1 = "Bad Line Number"
Close #1

End Sub
Carlven2012 2015-05-04
  • 打赏
  • 举报
回复


Option Explicit
Dim r1 As RegExp, m1 As MatchCollection
Dim r2 As RegExp, m2 As MatchCollection


Private Sub Command1_Click()
Set m2 = r2.Execute(m1.Item(2)) '第三行
Text2 = m2.Item(3) '第四列
End Sub

Private Sub Form_Load()
Set r1 = New RegExp
With r1
.Global = True
.IgnoreCase = True
.MultiLine = True
.Pattern = "^.+$"
End With
Set m1 = r1.Execute(Text1)

Set r2 = New RegExp
With r2
.Global = True
.IgnoreCase = True
.MultiLine = True
.Pattern = "\S+\b"
End With
End Sub
zzyong00 2015-05-03
  • 打赏
  • 举报
回复
Private Sub Form_Load()
    Dim lngFn As Long, strT As String
    lngFn = FreeFile
    Open "d:\1.txt" For Binary As #lngFn
    strT = Space(LOF(lngFn))
    Get #1, , strT
    Close #lngFn
    Dim sArr() As String
    sArr = Split(strT, vbCrLf)
    MsgBox Split(sArr(2), " ")(3) ''第3行第4列值
End Sub

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧