【问题标题】:c# line by line reading txt filec#逐行读取txt文件
【发布时间】:2017-09-14 14:42:56
【问题描述】:
private void button1_Click(object sender, EventArgs e) //dosya seçiniz click
    {
        //OpenFileDialog file = new OpenFileDialog();
        //file.Filter = "Txt Dosyası |*.txt";
        //file.ShowDialog();

        string[] veri = new string[1000];
        StreamReader SR = new StreamReader(@"C:\Users\Murat\Pictures\New folder\DE.TXT");
        string satir;

        while (SR.ReadLine() != null)
        {
            satir = SR.ReadLine();
            veri[0] = satir;
            richTextBox1.AppendText(satir + "\n");

            richTextBox2.AppendText("{" + '"' + satir + '"' + ", new DataElement { Tag ='" + '"' + veri[0] + '"' + ", Type = FieldTypes.");
            satir = SR.ReadLine();
            richTextBox2.AppendText(satir + ", ");
            satir = SR.ReadLine();
            if (satir.Length > 3)
            {
                richTextBox2.AppendText("MinLength = 0,");
            }

你好,这是我的代码分区, 我正在逐行读取 txt 文件中的数据。但是如何使这个词成为数组呢?

有一个 Txt 文件。里面有台词。 我会将这一行中的单词分配给数组,然后处理它们。但我无法创建一个数组。这也是我多次使用新线路的原因。

【问题讨论】:

  • 你打电话ReadLine()是不是有点太频繁了?
  • 但是,因为我逐行阅读,但无法排好。
  • 什么词?如何判断数据何时结束?
  • 请连接teamviewer,基本问题:S
  • @MuratÇetiner 你的问题不清楚。请花一些时间重新编写它并更好地解释您的需求。

标签: c# arrays file txtextcontrol


【解决方案1】:

单个.ReadAllLines() 怎么样?

编辑:
您可以使用File.ReadAllLines。您传递要读取的文件路径,您将获得一个字符串数组作为结果。每个数组元素代表文件中的一行文本。

但您也可以继续使用StreamReader。然后你可以使用StreamReader.ReadToEnd。这将返回一个包含文本文件的孔内容的字符串。然后你有两个选择:首先你可以通过CRLF 分割来获取行并根据需要处理它们。或者您将开始深入研究正则表达式并阅读this post 和其他有关正则表达式和拆分/提取单词的内容...

【讨论】:

  • 我建议您在帖子中添加更多描述。 OP 使用 StreamReader 哪个没有 ReadAllLines 并且他可能不知道在哪里可以找到它以及如何使用它
【解决方案2】:

你应该考虑重写你的“阅读函数”。

使用以下方法作为起点:

public List<string> readWordsFromFile(string file) {
    list<string> result = new List<string>();
    using(Streamreader sr = new Streamreader(file)) {
        while(!sr.EndOfFile) { // making sure to read the whole file
            result.Append(sr.ReadLine().Split(" ")); // splitting words by " " (space)
        }
    }
    return result;
}

你也可以ReadToEnd().Split(" ")

【讨论】:

  • 我想唱个别词。不是这样。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-19
  • 2017-08-29
  • 1970-01-01
  • 2012-02-16
  • 2014-06-21
相关资源
最近更新 更多