2014-12-06 57 views
0

我在讀取服務器中的cvs文件時遇到問題。我知道這肯定不是文件夾權限問題,因爲我可以上傳和刪除服務器中的文件。已解決讀取服務器中的cvs文件問題

的問題是在這裏:使用(StreamReader的SR = File.OpenText(@ 「FullDomain/MyCVSFolder/Promocodes.cvs」))

這個代碼在本地,如果我更改文件位置的本地路徑@ 「c:etc」 我會真正appreaciate任何幫助!

代碼:

protected void btnPreviewFile_Click(object sender, EventArgs e) 
    { 
     DataTable dt = new DataTable(); 
     string line = null; 
     int i = 0; 

    try{ 

     using (StreamReader sr = File.OpenText(@"fullDomain/MyCVSFolder/Promocodes.cvs")) 
     { 
      while ((line = sr.ReadLine()) != null) 
      { 
       string[] data = line.Split(','); 
       if (data.Length > 0) 
       { 
        if (i == 0) 
        { 
         foreach (var item in data) 
         { 
          dt.Columns.Add(new DataColumn()); 
         } 
         i++; 
        } 
        DataRow row = dt.NewRow(); 
        row.ItemArray = data; 
        dt.Rows.Add(row); 

        LabelAlert.Text = "Preview good"; 

        //Display data in a GridView control 
        GridView1.DataSource = dt; 
        GridView1.DataBind(); 

       } 
      } 
     } 

    }catch(Exception ex){ 

    LabelAlert.Text = ex.ToString(); 
    } 
    } 
+1

使用使用Server.Mappath( 「MyCVSFolder/Promocodes.csv」);您需要指定文件夾的完整路徑。 – 2014-12-06 00:21:01

+0

Hi Mihai,謝謝你的回答,你能否告訴我在我的代碼中使用你的解決方案的確切位置?因爲這給了我一個錯誤:使用(StreamReader sr = Server.MapPath(「MyCVSFolder/Promocodes.csv」)) – Carlos 2014-12-06 00:25:45

+1

將路徑傳遞給File.OpenText(Server.MapPath(「MyCVSFolder/Promocodes.csv」)) – 2014-12-06 00:26:20

回答

0

這裏是米哈伊給我​​的解決方案。

我替換此線

`using (StreamReader sr = File.OpenText(@"fullDomain/MyCVSFolder/Promocodes.cvs"))` 

`using (StreamReader sr = File.OpenText(Server.MapPath("/MyCVSFolder/Promocodes.cvs")))`