我要读取txt文件里的数据,第一行是字段名,后面每行都是一条记录,每个字段使用tab键隔开,每条记录是换行隔开,我要读取后存到数据库里,请问怎么实现。我觉得应该从第二行开始读写入数据库,那么怎么从第二行开始读取。我想要具体代码,谢谢。
例如:
name age height id sex 
lkk 23 160 2009 girl
hgg 24 170 3009 boy
gtt 23 176 4009 girl
...
怎么才能读取数据写入数据库。第一行如果读取了怎么能直接建表,接着把第二行以后读取。

解决方案 »

  1.   

    数据库中应该先建立一张表,和txt里的字段先对应上啊.
      

  2.   

    这个应该不行,他可能是想根据txt的第一行创建表
    事先不知道表有哪些字段
      

  3.   

    大概写了下,没测试,按你的需求自己改下吧
      Public Function ss(ByVal Filename As String, ByVal iniSection As String) As Boolean
            If Not File.Exists(Filename) Then
                'MsgBox("文件 " & iniFile & " 未找到,请确认路径和文件名是否正确!")
                Return False
            End If
            Dim iniRead As New StreamReader(Filename)
            Dim iniStr As String = iniRead.ReadToEnd
            Dim i As Integer
            Dim cLine As Integer
            Dim getValue As String = ""
            Dim cLst
            cLst = iniStr.Split(Chr(13))
            cLine = UBound(cLst)
            Dim sqltext As String = cLst(0)
            sqltext = "create table " & "你的表名字" & "(" & sqltext.Replace(Chr(9), " varchar2,") & " varchar2)"
            'varchar2为缺省的数据类型,有变化的自己调整
            '执行sqltext中的语句,具体代码略        For i = 1 To cLine
                sqltext = "insert into  " & "你的表名字" & "(" & cLst(0).Replace(Chr(9), ",") & ") values ('" & cLst(i).Replace(Chr(9), "','") & "')"
                '执行sqltext中的语句,具体代码略
            Next
            Return True
        End Function
      

  4.   

    C# 代码,
    private void button2_Click(object sender, EventArgs e)
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("a");
                dt.Columns.Add("b");
                dt.Columns.Add("c");
                dt.Columns.Add("d");
                string strFilePath = "D:\\database\\系统日志.txt";
                FileStream fs = new FileStream(strFilePath, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fs, System.Text.Encoding.UTF8);            SqlConnection conn = DatabaseConnection.GetConnected();
                conn.Open();            string strLine = sr.ReadLine();            while (strLine != null)
                {
                    string[] strArray = new string[4];
                    strArray = strLine.Split('\t');
                    DataRow dr = dt.NewRow();
                    dr[0] = strArray[0];
                    dr[1] = strArray[1];
                    dr[2] = strArray[2];
                    dr[3] = strArray[3];
                    string sql = "insert into 你的表名 values('" + dr[0] + "','" + dr[1] + "','" + dr[2] + "','" + dr[3] + "')";
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    cmd.ExecuteNonQuery();
                    dt.Rows.Add(dr);
                    strLine = sr.ReadLine();
                }
                sr.Close();
                fs.Close();
                conn.Close();
            }
      

  5.   

    先把第一行读了,不处理,从第2行开始处理数据用string.split的方法把第2行以后的数据分隔添进你的数据表里