0
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文件。里面有台词。我会将这一行中的单词分配给数组,然后处理它们。但我无法创建一个数组。这就是我多次使用新生产线的原因。

4

2 回答 2

2

单人.ReadAllLines()呢?

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

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

于 2017-09-14T14:47:31.457 回答
1

您应该考虑重写您的“阅读功能”。

使用以下方法作为起点:

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(" ")

于 2017-09-14T14:48:17.333 回答