将数据从文本框传输到streamreader

时间:2011-04-06 17:10:06

标签: c# streamreader

我是c#的新手 在此之前,我尝试使用streamreader读取文本框中的结束数据。 现在......我试图逐行将数据从文本框移动到另一个流读取器 我试试这段代码

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();
            }

       }    

这不是错误但是当我跑的时候什么都没有...... 是我的编码错误吗?

2 个答案:

答案 0 :(得分:0)

在每次迭代中,您将该迭代的结果分配给txtCaseInputs.Text,将“结束”写入上一次迭代的结果。

如果您希望文本框包含文件中所有字段的串联,则应附加每次迭代而不是分配:

txtCaseInputs.Text += ListSplitLineByLine.Trim();

在开始整个过程​​之前,不要忘记清除文本框的内容。

答案 1 :(得分: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;
}