如何把csv文件存入数组?

coosee 2006-10-25 08:47:51
请大家帮忙,如何把csv文件按逗号分割插入数组啊?关键是文件内容里还含有',' 这该怎么处理啊?
...全文
538 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
coosee 2006-10-26
  • 打赏
  • 举报
回复
beer1012(长青树),能解释一下您的代码吗?不大明白啊。
beer1012 2006-10-25
  • 打赏
  • 举报
回复
Dim myreader As IO.StreamReader = New IO.StreamReader(TxtBx_filepath.Text, System.Text.Encoding.Default)
Dim tr(26) As String
Dim rws As String
Dim chararray() As Char = {", "}
rws = myreader.ReadLine()
While Not myreader.EndOfStream
Try
tr = rws.Split(chararray)
.........
Catch ex As FileIO.MalformedLineException
MessageBox.Show(ex.Message)
End Try
filtable.AcceptChanges()
rws = myreader.ReadLine()
End While
myreader.Close()
zq972 2006-10-25
  • 打赏
  • 举报
回复
恩,可以先把','替换成别的字符比如:'''
然后再split()
最后对数组的每个元素将'''替换回','
VBToy 2006-10-25
  • 打赏
  • 举报
回复
可以先预处理一下,比如将','中的逗号用全角的逗号替换。
coosee 2006-10-25
  • 打赏
  • 举报
回复
可是文件中也有逗号啊,只不过用','(带单引号)表示了。
VBToy 2006-10-25
  • 打赏
  • 举报
回复
用Line Input读入一行数据,然后用splite函数将每行的数据以逗号为隔符读入数组。大致是这样的:
Dim b() as string
dim i as integer
Open telFile For Input As #FF
Do While Not EOF(FF)
Line Input #FF, lineStr
redim preserve b(i)
i=i+1
b(i)=splite(linestr,",")
DoEvents
Loop
Close #FF

7,763

社区成员

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

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