【发布时间】:2019-12-29 02:02:43
【问题描述】:
我正在制作一个小游戏,但无法将游戏结果保存到文本文件中。 我尝试只阅读所需的行,但收效甚微:
List<string> a = File.ReadLines(path).Skip(2).Take(2).ToList();
文本文件里面有 4 行:
PlayerTag
Wins: 0
Losses: 0
Draws: 0
玩家获胜后,我想将获胜次数增加 1。
理想的方法是什么?
【问题讨论】:
-
读取所有行,更改要更改的行,然后将所有行写入文本文件?
-
读入整个文件,反序列化,更新,序列化,保存
-
var lines = File.ReadAllLines(path); int oldWins = int.Parse(lines[1].Split(": ")[1]); oldWins += 1; lines[1] = "Wins: " + oldWins.ToString(); File.WriteAllLines(path, lines); -
我建议你看看 JSON 序列化/反序列化。比解析自己的文本文件要容易得多。 dotnetfiddle.net/Pd43a6
-
写一个简单的自定义类来封装你的球员得分历史,然后使用XmlSerializer。
标签: c# streamreader streamwriter