如何在字典中用其他键和值替换内容

本文关键字:键和值 替换 其他 字典 | 更新日期: 2023-09-27 18:33:38

StreamWriter myfile = new StreamWriter(@"d:/into.txt");
string MyStringFile = @"
  | Domain: domainName12
  | UserName: paswordchange
  | PassWord: abc12";
Dictionary<string, string> myv = new Dictionary<string, string>();
myv.Add("abc12", "thi user");
myv.Add("paswordchange", "wer2345");
myv.Add("domainName12", "www.abc.com");
string MyStringFileNew = "";
foreach ( KeyValuePair<string, string> pair in myv)
{
    MyStringFileNew = MyStringFile.Replace(pair.Key.ToString(), pair.Value.ToString()).ToString();
}

我正在尝试使用Dictionary用上述刺痛替换某些内容,但唯一最后一个键www.abc.com已成功替换。

我正在使用 C#

如何在字典中用其他键和值替换内容

您正在使用未更改的字符串来替换值。

将您的代码更改为 :

foreach ( KeyValuePair<string, string> pair in myv)
{
    MyStringFile = MyStringFile.Replace(pair.Key.ToString(), pair.Value.ToString()).ToString();
}
MyStringFileNew = MyStringFile;

或者这样做以防止更改原始字符串:

MyStringFileNew = MyStringFile;
foreach ( KeyValuePair<string, string> pair in myv)
{
    MyStringFileNew = MyStringFileNew.Replace(pair.Key.ToString(), pair.Value.ToString()).ToString();
}