作者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