在字符串中写入我的列表的 1 个元素,处理它并重复此操作,直到我完成列表

本文关键字:列表 操作 处理 字符串 我的 元素 | 更新日期: 2023-09-27 18:34:17

我想从我的列表中获取一个元素,将其提供给与之配合使用的方法,然后从我的列表中获取下一个元素,直到我完成整个列表。问题是它仍然在"_rawText = [这里]"之后的部分下划线,我不知道有什么问题。它说有无效的参数。到目前为止,我就是这样:

        string _rawText = "";
        List<string> _fileNameList = new List<string>();
        for (int i = 0; i < _fileNameList.Count; i++)
            {
                Console.WriteLine("'nDocument " + (i+1) +" of " + _fileNameList.Count + "'n");
                _rawText = ReadDocument(_fileNameList[i].ToString());
                CheckDocument(_rawText);
                AnalyzeResult();
                PrintResult();
            }
public string ReadDocument(List<string> _fileNameList)
        {
            if (File.Exists(_rawText))
            {
                return File.ReadAllText(_rawText);
            }
            else
            {
                Console.BackgroundColor = ConsoleColor.DarkRed;
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("'nKeine Datei gefunden!'n");
                Console.ResetColor();
                Console.WriteLine("Soll eine Textdatei unter folgendem Pfad erstellt werden? < j / n >");
                Console.WriteLine("Pfad: '"" + _rawText + "'"");
                string createFile = "";
                do
                {
                    createFile = Console.ReadLine().ToUpper().Trim();
                    switch (createFile)
                    {
                        case "J":
                            Console.Write("Datei wird erstellt...");
                            File.Create(_rawText());
                            if (!File.Exists(_rawText))
                            {
                                Console.WriteLine("Datei konnte nicht ertellt werden.");
                                break;
                            }
                            else
                            {
                                Console.WriteLine("'nDatei wurde erfolgreich erstellt.");
                                Console.BackgroundColor = ConsoleColor.DarkYellow;
                                Console.ForegroundColor = ConsoleColor.White;
                                Console.WriteLine("Hinweis:");
                                Console.ResetColor();
                                Console.WriteLine("Bitte den zu überprüfenden Text in die Datei schreiben und das Programm erneut starten.");
                                break;
                            }
                        case "N":
                            Console.WriteLine("Programm wird beendet . . .");
                            Thread.Sleep(350);
                            Environment.Exit(0);
                            break;
                        case "LOL":
                            while (true)
                                Console.Write("LOL---");
                            break;
                        default:
                            Console.WriteLine("");
                            Console.BackgroundColor = ConsoleColor.Gray;
                            Console.ForegroundColor = ConsoleColor.Black;
                            Console.WriteLine("Falsche Eigabe. Bitte gültigen Buchstaben eingeben. < j / n >");
                            Console.ResetColor();
                            Console.WriteLine("");
                            break;
                    }
                } while (createFile != "J" && createFile != "N");
                return string.Empty;
            }
        }

在字符串中写入我的列表的 1 个元素,处理它并重复此操作,直到我完成列表

问题是 ReadDocument 接受字符串列表,而您只传入一个字符串。但是该方法无论如何都不使用该参数。它使用的是未在方法中定义的_rawText。似乎您在这里遇到了多个问题。但是您最初的问题是在需要List<string>时传递字符串。

您的 ReadDocument() 方法需要一个完整的 List 作为参数,但您传递的是一个字符串。根据循环中的代码,您应该更改 ReadDocument() 的签名以接收字符串:

public string ReadDocument(string fileName)
{
    if (File.Exists(fileName))
    {
        return File.ReadAllText(fileName);
    }
    else
    {
       //...
    }
}