C#逐行分元素读取记事本数据并写入数据库的方法
本文实例讲述了C#逐行分元素读取记事本数据并写入数据库的方法。分享给大家供大家参考。具体分析如下:
其实这里最关键的一个方法是StreamReader类里的ReadLine();这个方法可以逐行读取txt流里面的数据。写了个简单的demo,已经加上了详细的注释说明。
ok,好了,不废话,下面直接上代码
publicvoidInputData() { DataTabledt=newDataTable(); stringstrFilePath="e:\\ouput1.txt"; FileStreamfs=newFileStream(strFilePath,FileMode.Open,FileAccess.Read); StreamReadersr=newStreamReader(fs,System.Text.Encoding.UTF8);//utf-8格式,下面的是gb2312格式 ///StreamReadersr=newStreamReader(fs,System.Text.Encoding.Default);
//SqlConnectionconn=DatabaseConnection.GetConnected(); //conn.Open(); stringstrLine0=sr.ReadLine(); ///当行内需要重新分散元素的是时候,我注释掉以下代码,demo里,用“,”区分行元素,然后,用ado.net插入数据库就可以了 /* StringstrLine1=sr.ReadLine(); StringstrLine2=sr.ReadLine();*/ while(strLine0!=null) { string[]strArray=newstring[4]; strArray=strLine0.Split(','); DataRowdr=dt.NewRow(); dr[0]=strArray[0]; dr[1]=strArray[1]; dr[2]=strArray[2]; dr[3]=strArray[3]; //stringsql="insertinto你的表名values('"+dr[0]+"','"+dr[1]+"','"+dr[2]+"','"+dr[3]+"')"; //SqlCommandcmd=newSqlCommand(sql,conn); //cmd.ExecuteNonQuery(); dt.Rows.Add(dr); strLine0=sr.ReadLine(); } sr.Close(); fs.Close(); //conn.Close(); }