所以,我正在用C#制作一个基于文本的游戏,我正在创建一个配置文件功能。它在第一次执行时已经创建了一个新的TXT文件,并将其存储在appdata文件夹中。现在,这是TXT文件中的内容;
NAME=[$]
REP=[0]
“NAME”运算符用于个人别名,是我目前正在处理的内容。我需要它做的是输入一个命令;
alias Example
它将修改一个List,其中包含与TXT文件同步的内容。我尝试了许多不同的方式,包括;
case "alias":
string joined = string.Join(",", profileList.ToArray());
string[] joineone = joined.Split(',');
profileList.Clear();
foreach (string var in joineone)
{
if (var.StartsWith("NAME"))
{
var.Replace(getStringBetween(var, "[", "]"), preCut[1]);
}
profileList.Add(var);
}
Invoke(new _rewriteProfile(rewriteProfile));
break;
和更短的版本;
profileList[0].Replace(getStringBetween(profileList[0],"=[", "]"), preCut[1]);
其中profileList
是与TXT文件同步的getStringBetween
,{{1}}获取两个字符之间的字符串。它也被连接到替换,用第一个“切割”替换它,在这种情况下是“示例”。问题是,它永远不会改变。文本在列表中没有变化。我不知道为什么。我顺便使用.NET 2.0。
任何帮助都将受到高度赞赏!
答案 0 :(得分:0)
检查txt文件是否只读......或者你的方法(getStringBetween)不会返回任何内容。
答案 1 :(得分:0)
var = var.Replace(getStringBetween(var,“[”,“]”),preCut [1]);