gpt4 book ai didi

c# - SaveFileDialog 使 c# 中的 streamwriter 出现问题

转载 作者:太空宇宙 更新时间:2023-11-03 18:12:44 24 4
gpt4 key购买 nike

我想从 streamwriter 的内容中保存文件,但在这段代码中

SaveFileDialog savefile = new SaveFileDialog();
savefile.FileName = "unknown.txt";
savefile.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*|";
if (savefile.ShowDialog() == DialogResult.OK)
{
using (StreamWriter sw = new StreamWriter(savefile.FileName, false, System.Text.Encoding.Unicode))
sw.WriteLine("Test line");
sw.WriteLine("Test line2");
sw.WriteLine("Test line3");
}

sw.WriteLine("Test line2");
sw.WriteLine("Test line3");
,是错误的,sw 不存在!

但我很少使用代码

使用 (StreamWriter sw = new StreamWriter("\unknow.txt", false,System.Text.Encoding.Unicode))
sw.WriteLine("测试线");
sw.WriteLine("测试线2");
sw.WriteLine("测试线3");

一切正常!问题在哪里?谢谢!

最佳答案

你只需要添加大括号:

using (StreamWriter sw = new StreamWriter(savefile.FileName, 
false, System.Text.Encoding.Unicode))
{
sw.WriteLine("Test line");
sw.WriteLine("Test line2");
sw.WriteLine("Test line3");
}

sw 变量在 using() 语句的范围内是局部的。没有大括号那只是第一个 WriteLine()。

using() 的作用域规则与 if() 相同,您已经正确地使用了它。

关于c# - SaveFileDialog 使 c# 中的 streamwriter 出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11776781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com