C# 如何在C中替换txt文件中的单词

C# 如何在C中替换txt文件中的单词,c#,methods,replace,streamreader,C#,Methods,Replace,Streamreader,我试图打开一个.txt文件,搜索一个单词,然后在它出现的任何地方用另一个替换它。我可以这样做,但不能使用.txt文件,只能使用我自己在.cs文件中编写的字符串。以下是我到目前为止使用的方法: public void EditorialControl(string fileName, string word, string replacement) { List<string> list = new List<string>(

我试图打开一个.txt文件,搜索一个单词,然后在它出现的任何地方用另一个替换它。我可以这样做,但不能使用.txt文件,只能使用我自己在.cs文件中编写的字符串。以下是我到目前为止使用的方法:

public void EditorialControl(string fileName, string word, string replacement)
    {            
        List<string> list = new List<string>();
        using (StreamReader reader = new StreamReader(directory + fileName))
        {
            string line;
            while ((line = reader.ReadLine()) != null)
            {                   
                Console.WriteLine(line);
                list.Add(line);
            }
            reader.Close();
        }
     }
当我在Main中调用该方法时,它应该使用参数字并用我选择的替换字替换它


你们能帮我用代码替换方法中的一个单词吗

这比你想象的要简单得多:

File.WriteAllText(fileName, File.ReadAllText(fileName).Replace(word1, word2));
就这样

您可以使用regex


为什么你要引入一个有股票C方法的正则表达式的复杂性。替换???@KirkWoll Ex。。如果你想替换某个单词,它会替换某个不是单词的地方。现在你正在创造需求+1.我和一个叫“杀”的DJ在一起。另外,实现适当的单词检测对于最基本的文件操作assignmet来说也是一个不错的选择:啊,我应该说我之前尝试过类似的代码,它也起了作用,但我正在尝试为一个任务这样做,我不能做像文件这样的事情。因为我还没有知道。但是谢谢你的帮助。我只需要找到一种方法,将单词变量设置为文本文件中的一个单词,这样我就可以用替换变量替换它。这也会替换另一个单词的一部分。例如,如果你想替换一个单词,它会替换不是单词的某个地方。我还想补充一点,我不能使用其他类,因为它是不是我任务的一部分。我唯一了解的是列表、控制台、字符串以及最近的StreamReader和StreamWriter,因此请尽量保持答案简单,但感谢大家的帮助。今天早些时候,我制作了一个不同的程序,但替换单词的代码类似于以下字符串更正=句子。Replacespeal,spell;这一个的问题是它不需要从文本文件中读取。你们能想出一个类似的方法,我可以用它来做我现在正在做的程序吗?谢谢:你想把新的文本写进不同的文件还是同一个文件?不,我不需要把它写进新的文件或不同的文件,我只需要在cmd中显示正在更改的单词以及文本文件中的其余文本我想这里的所有答案都解决了你的问题如果解决了你的问题,你就不接受其中一个答案你不承认别人的帮助是非常粗鲁的。。。。
string target=System.IO.File.ReadAllText(directory + fileName);
Regex.Replace(target,@"\b"+word+@"\b",replacement);