C#逐行分元素读取记事本数据并写入数据库的方法

本文实例讲述了C#逐行分元素读取记事本数据并写入数据库的方法。分享给大家供大家参考。具体分析如下:

其实这里最关键的一个方法是 StreamReader类里的 ReadLine();这个方法可以逐行读取txt流里面的数据。写了个简单的demo,已经加上了详细的注释说明。

ok,好了,不废话,下面直接上代码

复制代码 代码如下:
public void InputData() 

    DataTable dt = new DataTable(); 
    string strFilePath = "e:\\ouput1.txt"; 
    FileStream fs = new FileStream(strFilePath, FileMode.Open, FileAccess.Read); 
    StreamReader sr = new StreamReader(fs, System.Text.Encoding.UTF8);//utf-8格式,下面的是gb2312格式 
    ///StreamReader sr = new StreamReader(fs, System.Text.Encoding.Default); 

    //SqlConnection conn = DatabaseConnection.GetConnected(); 
    //conn.Open(); 
    string strLine0 = sr.ReadLine(); 
    ///当行内需要重新分散元素的是时候,我注释掉以下代码,demo里,用“,”区分行元素,然后,用ado.net插入数据库就可以了 
    /*
    String strLine1 = sr.ReadLine();
    String strLine2 = sr.ReadLine();*/
    while (strLine0 != null) 
    { 
 string[] strArray = new string[4]; 
 strArray = strLine0.Split(','); 
 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); 
 strLine0 = sr.ReadLine(); 
    } 
    sr.Close(); 
    fs.Close(); 
    //conn.Close(); 
}

希望本文所述对大家的C#程序设计有所帮助。

你可能感兴趣的:(C#逐行分元素读取记事本数据并写入数据库的方法)