新聞中心
vb.net 怎么生成csv文件與怎么讀取csv文件
CSV文件,在EXCEL里可以直接生成與讀取。
成都創(chuàng)新互聯(lián)公司基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供四川聯(lián)通機房服務器托管 四川大帶寬租用 成都機柜租用 成都服務器租用。
可以通過VB.net去操作,打開EXCEL文件,去完成上述操作,而更為簡單的辦法是直接當做操作文本文件(TXT文件)就可以,因為用記事本軟件,打開CSV文可以發(fā)現(xiàn),其實際上是一個行內(nèi)數(shù)據(jù)之間用逗號分隔的格式文件。
下面給出例子:
在窗體上添加兩個多行文本框,兩個按鈕,兩個文本框一個用來輸入生成CSV文件的數(shù)據(jù),另一個用來讀取顯示CSV文件的數(shù)據(jù);兩個按鈕,一個完成生成CSV文件的代碼,另一個完成讀取CSV文件的代碼;具體代碼如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'創(chuàng)建(寫入)一個文本文件
Dim MyStream As New System.IO.FileStream(Application.StartupPath "\Ssk.CSV", System.IO.FileMode.Create)
Dim MyWriter As New System.IO.StreamWriter(MyStream, System.Text.Encoding.Default)
MyWriter.WriteLine(TextBox1.Text)
MyWriter.Flush()
MyWriter.Close()
MyStream.Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'讀取一個文本文件
Dim MyReader As New System.IO.StreamReader(Application.StartupPath "\Ssk.CSV", System.Text.Encoding.UTF8)
TextBox2.Text = MyReader.ReadToEnd()
MyReader.Close()
End Sub
注意:在輸入文本框里,同一行數(shù)據(jù)的數(shù)據(jù)之間用逗號(西文逗號)分隔。
vb.net怎么生成csv文件啊 求具體代碼
CSV只不過是用CRLF分行,逗號分列的一個簡單文本
先做好行模板,如
Private RowTemp as string ="{0},{1},{2},....{n}"
寫入文件時候分行寫入
System.IO.StreamWriter.WriteLine(String.format(RowTemp,"數(shù)據(jù)1”,“數(shù)據(jù)2"...."數(shù)據(jù)n"))
vb.net 操作CSV問題 求大神 急
用一個streamreader和streamwriter即可
Using?sr2?As?New?StreamWriter("2.csv",?False,?Text.Encoding.Default)?'要寫入的文件
Using?sr1?As?New?StreamReader("1.csv",?Text.Encoding.Default)?'要讀取的文件
While?Not?sr1.EndOfStream?'EndOfStream=True表示讀取結(jié)束了
'讀取
Dim?lineread?As?String?=?""?'等下要讀的行
Dim?linewrite?As?String?=?""?'等下要寫入的行
Dim?data?As?String()?'每個數(shù)據(jù)的數(shù)組
lineread?=?sr1.ReadLine?'讀一行并把流的位置往后調(diào)一行
'你現(xiàn)在可以用If判斷這一行要不要刪除。如果要的話,用Else直接跳過下面的語句即可。
data?=?lineread.Split(",".ToCharArray,?StringSplitOptions.RemoveEmptyEntries)?'讀取一行,用逗號分隔后存在數(shù)組里
'下面對讀取到的數(shù)據(jù)進行處理,你可以自己處理它
For?Each?item?As?String?In?data
linewrite?=?item??","?'csv是以逗號分隔的,我們寫進去時也要記得加逗號
Next
'寫入
If?linewrite.EndsWith(",")?Then?'去掉行最后一個逗號。
'如果之前讀到一個空行,這里就不會執(zhí)行。你想想為什么
sr2.WriteLine(linewrite.Remove(linewrite.Length?-?1,?1))
End?If
'如果你之前用If判斷了行要不要刪除,那么End?If就應該加在這里。
End?While
sr1.Close()
End?Using
sr2.Flush()
sr2.Close()
End?Using
vb.net 一次實現(xiàn)多個csv取入
Public Function GetTxtFile(ByVal TxtFn As String) As String()
Dim sr As IO.StreamReader
Dim tmpstr As String
Dim R() As String
Dim Rn As Long
sr = IO.File.OpenText(TxtFn)
tmpstr = sr.ReadLine()
Rn = 0
While Not tmpstr Is Nothing
ReDim Preserve R(Rn)
R(Rn) = tmpstr
tmpstr = sr.ReadLine()
Rn += 1
End While
sr.Close()
Return R
End Function
這是讀取一個的,然后你取出多個文件循環(huán)調(diào)用就可以了
分享題目:vb.net篩選csv 基于vb的數(shù)據(jù)篩選
文章轉(zhuǎn)載:http://www.ef60e0e.cn/article/dodieig.html