当前位置:编程学习 > C#/ASP.NET >>

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

自己动手,丰衣足食 --------------------编程问答--------------------
引用 1 楼 u011344309 的回复:
先查询文件是否存在,不存在就创建 

根本就没接触过,上星期五刚用,怎么创建啊 有代码吗 --------------------编程问答-------------------- 写入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)) --------------------编程问答-------------------- 随便写的,自己看看修改


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

--------------------编程问答-------------------- CSV 文件 和 Txt 文件有区别吗?
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,