这是我的方法,它应该返回一个已解析的文档。
public string GetParsedDocument(string Document)
{
Document.Replace("{{tag}}", ParseMarkup(Tag.Text));
return Document
}
基本上我解析文档并将其写入如下文件:
System.IO.File.WriteAllText(SaveDialog.FileName, GetParsedDocument(TestProgram.Properties.Resources.Document));
然而,当我打开文件时,没有我的更改。这是怎么回事?我已经尝试逐字编写字符串,并且我已经测试过它是否是其他任何无效的组件;但事实并非如此。字符串替换不起作用。或者它没有正确返回。有什么想法吗?
答案 0 :(得分:4)
字符串是不可变的,因此它的所有方法都会返回新字符串。你应该这样:
string parsedDocument = Document.Replace("{{tag}}", ParseMarkup(Tag.Text));
return parsedDocument;
答案 1 :(得分:4)
Replace
无效,但是是一个返回已更改字符串的函数
return Document.Replace("{{tag}}", ParseMarkup(Tag.Text));
现在您将获得更改后的版本。