vb.net 怎么生成csv文件与怎么读取csv文件
新手 刚接触vb.net 需要具体代码 求帮助啊 --------------------编程问答-------------------- 先查询文件是否存在,不存在就创建 --------------------编程问答-------------------- http://www.baidu.com/s?wd=vb.net+csv&rsv_bp=0&ch=&tn=baidu&bar=&rsv_spt=3&ie=utf-8&rsv_n=2&rsv_sug3=1&rsv_sug1=1&rsv_sug4=44&inputT=687自己动手,丰衣足食 --------------------编程问答--------------------
根本就没接触过,上星期五刚用,怎么创建啊 有代码吗 --------------------编程问答-------------------- 写入CSV:My.computer.filesystem.WriteAllBytes("c:\test.csv",System.Text.Encoding.Default.GetBytes("字符串"),false,System.Text.Encoding.Default)
读入CSV:
Dim OutputString As String =My.computer.filesystem.ReadAllBytes("c:\test.csv",System.Text.Encoding.Default) --------------------编程问答-------------------- 读入CSV:
Dim OutputString As String =System.Text.Encoding.Default.GetString(My.computer.filesystem.ReadAllBytes("c:\test.csv",System.Text.Encoding.Default)) --------------------编程问答-------------------- 随便写的,自己看看修改
--------------------编程问答-------------------- CSV 文件 和 Txt 文件有区别吗?
Private Sub SaveCsv(ByVal dt As DataTable, ByVal csvPath As String, ByVal RecName As String)
Dim enc As System.Text.Encoding = _
System.Text.Encoding.GetEncoding("UTF-8")
Try
If System.IO.File.Exists(csvPath) Then
System.IO.File.Delete(csvPath)
End If
Catch ex As Exception
MessageBox.Show(csvPath & vbCrLf & "was failed to delete.", "ParameterEdit", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
Dim filePath As String = CreatePath(csvPath, RecName)
Dim sr As New System.IO.StreamWriter(filePath, False, enc)
Dim fileName As String = filePath.Substring(filePath.LastIndexOf("\") + 1)
Dim Dtype As String = DataAttribute.GetUnitName(DataAttribute.GetUnitID(RecName.Substring(0, RecName.IndexOf("\"))))
Dim colCount As Integer = dt.Columns.Count
Dim lastColIndex As Integer = colCount - 1
sr.Write("'*******************************************************************************")
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("' Machine Name : " & MACHIN_NAME)
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("' Version : " & VERSION)
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("' Data Type : " & Dtype)
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("' File Name : " & fileName)
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("' Save Date : " & Now.ToString("yyyy/MM/dd HH:mm:ss"))
sr.Write(ControlChars.Cr + ControlChars.Lf)
sr.Write("'*******************************************************************************")
sr.Write(ControlChars.Cr + ControlChars.Lf)
Dim uid As Int32 = GetUnitID(RecName)
Dim i As Integer
For i = 0 To colCount - 1
Dim field As String = dt.Columns(i).Caption
If field.IndexOf(ControlChars.Quote) > -1 OrElse _
field.IndexOf(","c) > -1 OrElse _
field.IndexOf(ControlChars.Cr) > -1 OrElse _
field.IndexOf(ControlChars.Lf) > -1 OrElse _
field.StartsWith(" ") OrElse _
field.StartsWith(ControlChars.Tab) OrElse _
field.EndsWith(" ") OrElse _
field.EndsWith(ControlChars.Tab) Then
If field.IndexOf(ControlChars.Quote) > -1 Then
field = field.Replace("""", """""")
End If
field = """" + field + """"
End If
sr.Write(field)
If lastColIndex > i Then
sr.Write(","c)
End If
Next i
sr.Write(ControlChars.Cr + ControlChars.Lf)
Dim row As DataRow
For Each row In dt.Rows
For i = 0 To colCount - 1
'フィールドの取得
Dim field As String = row(i).ToString()
If field.IndexOf(ControlChars.Quote) > -1 OrElse _
field.IndexOf(","c) > -1 OrElse _
field.IndexOf(ControlChars.Cr) > -1 OrElse _
field.IndexOf(ControlChars.Lf) > -1 OrElse _
field.StartsWith(" ") OrElse _
field.StartsWith(ControlChars.Tab) OrElse _
field.EndsWith(" ") OrElse _
field.EndsWith(ControlChars.Tab) Then
If field.IndexOf(ControlChars.Quote) > -1 Then
field = field.Replace("""", """""")
End If
field = """" + field + """"
End If
sr.Write(field)
If lastColIndex > i Then
sr.Write(","c)
End If
Next i
sr.Write(ControlChars.Cr + ControlChars.Lf)
Next row
sr.Close()
End Sub
Private Sub GetDtCsv(ByVal path As String, ByVal uid As Int32, ByVal ds As DataSet, ByVal recName As String)
Try
Dim objFile As New System.IO.StreamReader(path)
Dim strLine As String
Dim strTemp() As String
Dim RecItem As String
Dim MstItem As String = ""
Dim startLine As Int32 = 7
For iL As Int32 = 1 To startLine
strLine = objFile.ReadLine()
Next
strLine = objFile.ReadLine()
strLine = objFile.ReadLine()
Dim ColCnt As Int32 = startLine + 2
While (strLine <> "")
strTemp = Split(strLine, ",")
RecItem = strTemp(0)
If strTemp(strTemp.Length - 1) = "" Then
strLine = objFile.ReadLine()
ColCnt = ColCnt + 1
Continue While
End If
strLine = objFile.ReadLine()
ColCnt = ColCnt + 1
End While
ds.AcceptChanges()
Catch ex As Exception
End Try
End Sub
补充:.NET技术 , VB.NET