我真的是个编码新手,这是我的第一个程序,也是我第一次接触编码软件。
首先让我向你们展示我所拥有的:
private void SaveClose_Click(object sender, RoutedEventArgs e)
{
using (var fs = new FileStream(@"Resources\arguments.txt", FileMode.Truncate))
{
}
if (Windowed.IsChecked == true)
windowed = true;
else
windowed = false;
string text = File.ReadAllText(@"Resources\arguments.txt");
string createTextWindowed = "-screen-fullscreen 0" + Environment.NewLine;
File.WriteAllText(@"Resources\arguments.txt", createTextWindowed);
string createTextFullscreen = "-screen-fullscreen 1" + Environment.NewLine;
File.WriteAllText(@"Resources\arguments.txt", createTextFullscreen);
if (windowed == true)
createTextWindowed
else
createTextFullscreen
}第21行和第23行(createTextWindowed和createTextFullscreen)是错误的,我想修复它们,但是我是个菜鸟,所以我不知道如何使用我做的字符串,我想让程序写在txt文件中,如果windowed = true (我想你得到了),那么它就写在txt文件中。
发布于 2016-10-13 08:52:24
以下是更改后函数的完整代码:
private void SaveClose_Click(object sender, RoutedEventArgs e)
{
if (Windowed.IsChecked == true)
windowed = true;
else
windowed = false;
string textWrite;
if (windowed == true)
{
textWrite = "-screen-fullscreen 0" + Environment.NewLine;
}
else
{
textWrite = "-screen-fullscreen 1" + Environment.NewLine;
}
File.WriteAllText(@"Resources\arguments.txt", textWrite);
}发布于 2016-10-13 08:48:48
您的代码的逻辑顺序需要更改,因此:
string text = File.ReadAllText(@"Resources\arguments.txt");
if (Windowed.IsChecked)
{
text = text + "-screen-fullscreen 0" + Environment.NewLine;
}
else
{
text = text + "-screen-fullscreen 1" + Environment.NewLine;
}
File.WriteAllText(@"Resources\arguments.txt", text);using指令是不必要的,所以您可以删除它。
另外,如果windowed bool不是在此作用域之外使用的,那么它是不必要的,您可以直接在if语句中使用Windowed.IsChecked。这会使代码更清晰一些。
然后,您需要考虑代码的流程和逻辑。所以也许可以在一张纸上画出来,我的理解是:
"Resources\arguments.txt"读取文本Windowed.IsChecked为真,则向文本中添加参数-screen-fullscreen 0Windowed.IsChecked为false,则向文本中添加参数-screen-fullscreen 0也许回顾一下您的原始代码,记住这些步骤,看看是否可以找到多余的代码。
发布于 2016-10-13 08:43:25
string createText;
if (Windowed.IsChecked){
createText= "-screen-fullscreen 0" + Environment.NewLine;
}
else{
createText = "-screen-fullscreen 1" + Environment.NewLine;
}
File.WriteAllText(@"Resources\arguments.txt", createText);https://stackoverflow.com/questions/40016087
复制相似问题