这个问题包含了我在 C# 中遇到的两个问题(很可能是相互关联的)。我真的希望这在其他地方没有得到明确的回答,因为我不确定要使用什么搜索词,到目前为止还没有遇到任何可以令人满意地向我解释它的东西。我有一个isHighScore()
在我的 C# 文字游戏中调用的函数。基本上发生的事情是,无论我尝试以不同的方式对其进行格式化、删除使用、try/catch,我似乎都无法将变量写入文件。我已经为第一次阅读本文的人大幅编辑了代码,以说明(对我而言)似乎更多的范围问题。
private void isHighScore() //Having problems...
{
string strHighScore;
try
{
StreamReader readHighScore = new StreamReader(strPath + "WAHS.txt")
strHighScore = readHighScore.ReadLine();
}
catch (Exception e)
{
MessageBox.Show(Convert.ToString(e.Message));
}
...
接下来,我将使用 StreamWriter 插入一个类似的块,并且我对 userScore 大于 strHighScore 的比较似乎没有评估为 true。是因为我的变量超出范围吗?如何在该 try-catch 范围之外读取更改的值,或者就此而言,如何读取带有 StreamReader 的 using 语句(我知道这是首选方法)。