CSV文件,在EXCEL里可以直接生成與讀取。
在通川等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站,外貿(mào)網(wǎng)站建設(shè),通川網(wǎng)站建設(shè)費(fèi)用合理。
可以通過VB.net去操作,打開EXCEL文件,去完成上述操作,而更為簡單的辦法是直接當(dāng)做操作文本文件(TXT文件)就可以,因?yàn)橛糜浭卤拒浖蜷_CSV文可以發(fā)現(xiàn),其實(shí)際上是一個(gè)行內(nèi)數(shù)據(jù)之間用逗號(hào)分隔的格式文件。
下面給出例子:
在窗體上添加兩個(gè)多行文本框,兩個(gè)按鈕,兩個(gè)文本框一個(gè)用來輸入生成CSV文件的數(shù)據(jù),另一個(gè)用來讀取顯示CSV文件的數(shù)據(jù);兩個(gè)按鈕,一個(gè)完成生成CSV文件的代碼,另一個(gè)完成讀取CSV文件的代碼;具體代碼如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'創(chuàng)建(寫入)一個(gè)文本文件
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
'讀取一個(gè)文本文件
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ù)之間用逗號(hào)(西文逗號(hào))分隔。
你是怎么讀寫的呢?下面是簡單的讀寫
Dim str As String = (My.Computer.FileSystem.ReadAllText("C:\QD51-R24_A.csv")) '讀
My.Computer.FileSystem.WriteAllText("C:\1.csv", str, True) '寫
CSV只不過是用CRLF分行,
逗號(hào)
分列的一個(gè)
簡單文本
先做好行
模板
,如
Private
RowTemp
as
string
="{0},{1},{2},....{n}"
寫入文件時(shí)候分行寫入
System.IO.StreamWriter.
WriteLine
(String.format(RowTemp,"數(shù)據(jù)1”,“數(shù)據(jù)2"...."數(shù)據(jù)n"))
給你一段VB.net讀取csv文件的代碼把。
Imports?System.IO
Imports?System.Collections.Generic
Module?Module1
Public?CSV數(shù)據(jù)?As?List(Of?List(Of?String))
'''?summary
'''?從指定路徑的文件讀取內(nèi)容,并分析出其中每行含有分隔符的數(shù)據(jù),存到CSV數(shù)據(jù)中。
'''?para調(diào)用的時(shí)候使用CSV數(shù)據(jù)(5)(0)表示第6條記錄的第1個(gè)數(shù)據(jù)/para
'''?/summary
'''?param?name="文件路徑"必需。一個(gè)[String]表達(dá)式。要讀取的文件路徑。/param
'''?returns返回是否讀取成功/returns
'''?remarks/remarks
Public?Function?讀取(ByVal?文件路徑?As?String)?As?Boolean
Dim?文件讀取器?As?StreamReader?=?New?StreamReader(文件路徑)
Dim?語句?As?String
Dim?t成功?As?Boolean?=?True
Dim?分隔符?As?Char?=?";"
CSV數(shù)據(jù)?=?New?List(Of?List(Of?String))
While?Not?文件讀取器.EndOfStream
Try
語句?=?文件讀取器.ReadLine
'分析語句后判斷類型
If?語句.Contains(分隔符)?Then
Dim?array?=?語句.Split(分隔符)
If?array?IsNot?Nothing?Then
CSV數(shù)據(jù).Add(array.ToList())
End?If
End?If
Catch?ex?As?Exception
t成功?=?False
End?Try
End?While
Return?t成功
End?Function
End?Module
你上面的數(shù)據(jù)執(zhí)行后,將會(huì)保存到一個(gè)List嵌套List的String組中。
自己轉(zhuǎn)化為數(shù)字再進(jìn)行操作把。
Dim?數(shù)字?=?Convert.ToDecimal(CSV數(shù)據(jù)(5)(0))