作者kirghizia (雲和山的彼端)
看板Visual_Basic
標題[.NET]讀取檔案並儲入陣列
時間Thu Aug 22 23:10:07 2013
請輸入專案類型(網站專案或者應用程式專案):應用程式
小弟是vb新手
最近在研究如何用openfiledialog讀取檔案,然後儲入陣列
compile後出現一些問題,不知道怎麼解決
請版上的前輩幫忙解惑
==========================
OpenFileDialog1.Filter = "txt(*.txt)|*.txt|csv(*.csv)|*.csv|所有檔案(*.*)|*.*"
'點選「開啟檔案」,並將檔案內容顯示在文字方塊中
If OpenFileDialog1.ShowDialog() =
System.Windows.Forms.DialogResult.OK Then
'設定目前表單Form1上方顯示的文字,為所讀取的檔案檔名
Me.Text = OpenFileDialog1.FileName
'將RichTextBox1載入外部檔案(LoadFile,為所讀取的檔案檔名),並指定
文字格式為RichText
RichTextBox1.LoadFile(OpenFileDialog1.FileName,
RichTextBoxStreamType.RichText)
Dim sr As New System.IO.StreamReader(OpenFileDialog1.FileName,
System.Text.Encoding.Default)
RichTextBox1.Text = sr.ReadToEnd
'讀取檔案中的內容,並存入陣列中
'宣告一些字串變數
Dim strline As String
Dim strelement(8) As String
'一行一行讀到進來
Do
'讀下一行
strline = sr.ReadLine()
'將所讀入的字串,依照 , 來拆解到陣列上
strelement = strline.Split(",")
'將將第1, 2, 3欄位拆解出
RichTextBox2.Text &= strelement(0) & vbTab & strelement(1) &
vbTab & strelement(2) & vbNewLine
Loop While (sr.Peek <> -1) '若讀到最尾端的資料,則sr.Peek() = -1
MessageBox.Show("欄位拆解完成", "成功新增",
MessageBoxButtons.OKCancel, MessageBoxIcon.Information)
sr.Close()
End If
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.40.98.10
1F:→ MOONRAKER:What's your 問題 O_o? 08/23 01:16
2F:推 Marty:經人腦Compiler後 這行:RichTextBox1.Text = sr.ReadToEnd 08/23 08:24
3F:→ Marty:跟這行 Dim strelement(8) As String 邏輯上會有問題 08/23 08:25
4F:→ Marty:容易產生錯誤 08/23 08:25
5F:→ Marty:第一行錯誤在於有可能超過可容納上限 08/23 08:26
6F:→ Marty:第二行在於Split後 length不一定符合下面要填入的個數 08/23 08:28
7F:→ kirghizia:我到問題出在哪裡了,只要改變讀入richtextbox時檔案格 08/25 20:22
8F:→ kirghizia:謝謝你!! :) 08/25 20:23