读书人

苦寻 绝对给分 类似于这样的 文本文档

发布时间: 2012-03-16 16:34:56 作者: rapoo

苦寻 绝对给分 类似于这样的 文本文档信息如何变成 每个人的 属性 赋给数组中的每个元素
类似于这样的 文本文档信息如何读取 而后 如何变成 每个人的 属性 赋给数组中的每个元素

姓名性别生源所在地考卷类型高考成绩入学测试成绩
宋德顺男黑龙江 全国二卷115103
杨月伦男云南 自主命题9876
古金海男四川 自主命题7889
张屹峻男上海 自主命题10398
姚迪男 内蒙古 全国一卷64110
王彬男江西 自主命题110112
袁绍昆男湖北 全国二卷143232


高手帮忙


[解决办法]

VB code
Dim Tmp_Str     As StringDim Tmp_Arr()   As StringOpen c:\test.txt For Input As #1       '打开文本文件Do While Not EOF(1)    Line Input #1, Tmp_Str              '读取一行的内容     Tmp_Arr = Split(Tmp_Str, " ")          '将内容按空格拆开     msgbox tmp_arr(0)    msgbox tmp_arr(1)    msgbox tmp_arr(2)    msgbox tmp_arr(3)    msgbox tmp_arr(4)    msgbox tmp_arr(5)LoopClose #1
[解决办法]
'我想这是你想要的...
--------------------
'模块下的代码:自定义"Student"类型

Public Type Student
sName As String
sSex As String
sWhere As String
sTestPaper As String
sScoreGK As String
sScoreRX As String
End Type
------------------------
'窗体下的代码

Private Sub Command1_Click()
Dim fs, RecFile As String '源文件。
Dim TmpLine As String, TmpArr() As String, MenCount As Integer, i As Integer
Dim Whose() As Student '自定义的Student数组

Set fs = CreateObject("Scripting.FileSystemObject")
RecFile = App.Path & "\rec.txt" '源文件

If Not fs.FileExists(RecFile) Then MsgBox "找不到文件 " & RecFile: Exit Sub

Open RecFile For Input As #1 '打开文本文件
Do While Not EOF(1)
Line Input #1, TmpLine '读取一行的内容
If Len(Trim(TmpLine)) > 0 Then '忽略空行
If (MenCount Mod 10) = 0 Then ReDim Preserve Whose(MenCount + 10)
MenCount = MenCount + 1 '记录加1.

TmpArr = Split(TmpLine, Chr(9)) '将内容按Chr(9)(Tab制表键)拆开(建议用它)

If UBound(TmpArr) = 5 Then
Whose(MenCount).sName = TmpArr(0)
Whose(MenCount).sSex = TmpArr(1)
Whose(MenCount).sWhere = TmpArr(2)
Whose(MenCount).sTestPaper = TmpArr(3)
Whose(MenCount).sScoreGK = TmpArr(4)
Whose(MenCount).sScoreRX = TmpArr(5)
Else
MsgBox TmpArr(0) & " 此人信息不全。" & UBound(TmpArr)
End If
End If
Loop
Close #1

For i = 0 To UBound(Whose) '测试结果。你也可另写代码处理此数组为你所要求的...
Debug.Print Whose(i).sName & Chr(9) & Whose(i).sSex & Chr(9) & Whose(i).sWhere & Chr(9) _
& Whose(i).sTestPaper & Chr(9) & Whose(i).sScoreGK & Chr(9) & Whose(i).sScoreRX
Next
End Sub
----------------------
[解决办法]
白忙乎了,VB6写的,VB.NET2005 我不会。
不过你可根据此思路,自己写呀.
[解决办法]
探讨
谢谢啊 2005每次读取一行 我不会啊 #1 这在6.0里是读取一行的意思吧 2005中 我实现不聊啊

[解决办法]
TmpLine 记取的这一行字符串..... =====> TmpLine 读取的这一行字符串.....

读书人网 >VB

热点推荐