看板 Visual_Basic 關於我們 聯絡資訊
鄉民大家好 小小有個簡單的觀念一直轉不過來 還請大家幫忙指點一下 待讀入檔案如下: 1 2 3 4 5 6 7 8 9 .....(有N行) 希望檔案逐行讀入後能轉變成一維或二維的陣列 方便後續使用 以後直接呼叫如 out(1) 或 out(1,2) 以下是我寫的CODE部分: Dim file01 As New System.IO.StreamReader("D:\file01.txt") Dim xx As String Dim i As Integer Dim out()() As String i = 0 Do While file01.Peek > -1 xx = file01.ReadLine out(i, i) = Split(xx, "") <== 似乎是卡在這行 QQ ? i = i + 1 Loop file01.Close() 還請鄉民們幫忙指點一下 QQ 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.161.6.116 ※ 文章網址: http://www.ptt.cc/bbs/Visual_Basic/M.1414221485.A.ECC.html
GoalBased: 少一個空白? 10/25 16:19
GoalBased: Split(xx, " ")這樣? 10/25 16:19
Love1019: 加入空白後有改善些 但還有個問題是這樣只抓到最後一行 10/25 16:36
MOONRAKER: split得到的結果是一個陣列 裡面有幾項可以用ubound() 10/25 20:31
MOONRAKER: 得到 這樣知道怎麼改了吧 10/25 20:31
和大家分享一下 目前修改如下 : Dim fileReader As String fileReader = My.Computer.FileSystem.ReadAllText("D:\file01.txt") Dim strArr() As String Dim count As Integer fileReader = fileReader.Replace(vbCrLf, " ") strArr = fileReader.Split(" ") For count = 0 To strArr.Length - 1 MsgBox(strArr(count)) 執行後的矩陣內容如下 但不知道要如何去空格 ~"~ strArr(0) = 1 (1) = "" <= 有空格! (2) = 2 (3) = "" (4) = 3 (5) = 4 <= 這裡又沒空格? (6) = "" (7) = 5 (8) = "" (9) = 6 (10)= 7 ※ 編輯: Love1019 (118.161.6.116), 10/25/2014 21:51:13
KawasumiMai: 你把vbCrlf取代為空格後再用空格Split 10/25 23:25
KawasumiMai: 這作法對想處理成二維來說還蠻找自己麻煩的 10/25 23:25
MOONRAKER: ""是空字串不是空格,存以前先檢查strArr()各項是否"" 10/26 21:38
MOONRAKER: 就行了。split()的這個問題(或特色)VB6以來就有。 10/26 21:39