2012-11-01 56 views
0

將csv文件解析爲webapp表單中的列表。CSV文件解析爲列表,使列表公開以針對SQL表進行解析

如何公開列表以便我可以調用它並在其他類中使用它?我基本上需要通過列表中的數據解析SQL表中的數據。

public partial class _Default : System.Web.UI.Page 
{ 
    protected void UploadBtn_Click(object sender, EventArgs e) 
    { 

     if (FileUpload.HasFile) 
     { 

      string filename = Path.GetFileName(FileUpload.FileName); 

      using (FileStream stream = new FileStream(ConfigurationManager.AppSettings["temp_dir"].ToString().Trim() + filename, FileMode.Open, FileAccess.Read, FileShare.Read)) 
      { 
       using (StreamReader read = new StreamReader(stream)) 
       { 
        List<string[]> members = new List<string[]>(); 
        int j = 0; 

        while (!read.EndOfStream) 
        { 

         string line = read.ReadLine(); 
         string[] values = line.Split(','); 

         if(j==0) 
         { 
          j++; 
          continue; 
         } 

         long nbr = Convert.ToInt64(values[0]); 
         int lnbr = Convert.ToInt32(values[1]); 
         int value = Convert.ToInt32(values[2]); 
         members.Add(values); 
+1

請注意,CSV文件可以包含用引號括起來的嵌入逗號,而您的代碼無法處理這些逗號。有關更全面的解析示例,請參閱文章[使用C#讀取和編寫CSV文件](http://www.blackbeltcoder.com/Articles/files/reading-and-writing-csv-files-in-c)。 –

回答

0

如果你的目標是要檢查SQL在同一時間,你只需要移動你的List聲明瞭一點點。然後在解析CSV之後,啓動你的SQL代碼。

protected void UploadBtn_Click(object sender, EventArgs e) 
{ 
    List<string[]> members = new List<string[]>(); 

    /* parse upload file */ 

    /* check against SQL table */