2011-04-06 132 views
0

我是新的c# 在此之前,我嘗試讀取流式讀取器以結束文本框中的數據。 現在...我試圖將數據從文本框移動到另一個流式讀取器逐行 我試試這個代碼從文本框傳輸數據到流讀取器

String filename = ContentBox.Text;

 if (File.Exists(filename)) 
     { 
      using (StreamReader fileReader = new StreamReader(filename)) 
      { 

       String fileRow = ""; 

       while ((fileRow = fileReader.ReadLine()) != null) 
       { 

        String[] fileDataField = fileRow.Split(new string[] { "\r\n\t", " " }, StringSplitOptions.RemoveEmptyEntries); 
        String ListSplitLineByLine = ""; 

        //line = line.Replace("\r\n", " "); 
        //String[] SplitItemLineByLine1 = (line).Split(' '); 


        foreach (string lineByLine in fileDataField) 
        { 
         ListSplitLineByLine += "\r\n" + lineByLine; 
        } 

        txtCaseInputs.Text = ListSplitLineByLine.Trim(); 

        GenCombItems(); 

       } 
      //Close the StreamReader 
      fileReader.Close(); 
      } 

     }  

它是沒有錯誤,但是當我運行有什麼... 是我的編碼錯誤?

回答

0

在每次迭代中,您將該迭代的結果分配給txtCaseInputs.Text,寫入「覆蓋」上一次迭代的結果。

如果你想在文本框中包含文件中的所有字段的串聯,你應該附加在每次迭代而不是分配的:

txtCaseInputs.Text += ListSplitLineByLine.Trim(); 

而且不要忘了啓動整個前清除文本框的內容處理。

+0

它仍然是一樣的....沒有輸出產生 – rose 2011-04-07 00:29:49

0

把一些調試語句放在那裏,直到你得到它的權利。

您可以隨時刪除它們。

public string ZTest(string contentBoxText) { 
    string retValue = null; 
    string filename = contentBoxText; 
    if (File.Exists(filename)) { 
    using (StreamReader fileReader = new StreamReader(filename)) { 
     string fileRow; 
     while ((fileRow = fileReader.ReadLine()) != null) { 
     string[] fileDataField = fileRow.Split(new string[] { "\r\n\t", " " }, StringSplitOptions.RemoveEmptyEntries); 
     string ListSplitLineByLine = ""; 
     foreach (string lineByLine in fileDataField) { 
      ListSplitLineByLine += "\r\n" + lineByLine; 
     } 
     if (!String.IsNullOrEmpty(ListSplitLineByLine)) { 
      retValue = ListSplitLineByLine.Trim(); 
      GenCombItems(); 
     } else { 
      MessageBox.Show("No data"); 
     } 
     } 
     // Line below is not necessary. Handled by the "using" clause. 
     // fileReader.Close(); 
    } 
    } else { 
    MessageBox.Show("File Not Found"); 
    } 
    return retValue; 
} 
+0

ContentBox是包含load.i後的數據也試試這一個文本框,但還是一樣.. – rose 2011-04-07 00:31:05

+0

我上面寫的很容易讓你的存根測試:'string value = ZTest(ContentBox.Text);'然後在下一行'Console.WriteLine(value);'一定要在'ZTest'方法中設置一個斷點,這樣你就可以遍歷整個過程在Visual Studio中使用F-10)。 – jp2code 2011-04-07 16:38:29

相關問題