我是编程新手,我开始创建一个简单的记事本,只有4个按钮(打开,保存,新建和字体)。
如果我打开或保存,我得到一个错误:这是我的代码:
//Declare save as a new SaveFileDailog
SaveFileDialog save = new SaveFileDialog();
//Declare filename as a String equal to the SaveFileDialog's FileName
String filename = save.FileName;
//Declare filter as a String equal to our wanted SaveFileDialog Filter
String filter = "Text Files|*.txt|All Files|*.*";
//Set the SaveFileDialog's Filter to filter
save.Filter = filter;
//Set the title of the SaveFileDialog to Save
save.Title = "Save";
//Show the SaveFileDialog
if (save.ShowDialog(this) == DialogResult.OK)
{
//Write all of the text in txtBox to the specified file
System.IO.File.WriteAllText(filename, textBox1.Text);
}
else
{
//Return
return;
}//Declare save as a new SaveFileDailog
SaveFileDialog save = new SaveFileDialog();
//Declare filename as a String equal to the SaveFileDialog's FileName
String filename = save.FileName;
//Declare filter as a String equal to our wanted SaveFileDialog Filter
String filter = "Text Files|*.txt|All Files|*.*";
//Set the SaveFileDialog's Filter to filter
save.Filter = filter;
//Set the title of the SaveFileDialog to Save
save.Title = "Save";
//Show the SaveFileDialog
if (save.ShowDialog(this) == DialogResult.OK)
{
//Write all of the text in txtBox to the specified file
System.IO.File.WriteAllText(filename, textBox1.Text);
}
else
{
//Return
return;
}有什么想法吗?感谢并致以问候
ooopss我忘记写错误了,对此我很抱歉:这是错误:“错误: ArgumentException未处理。空路径名不合法”
如果我打开一个文本文件,就会得到这样的结果。然后突出显示这一行代码: textBox1.Text=System.IO.File.ReadAllText(filename,System.Text.Encoding.Default);
如果我保存的话什么都不会发生。
谢谢
发布于 2009-05-18 07:42:29
我希望在用户使用该对话框之后,您应该正在读取文件名:
System.IO.File.WriteAllText(save.FileName, textBox1.Text);还有- SaveFileDialog是IDisposable,所以你应该是"using“它...
using (SaveFileDialog save = new SaveFileDialog())
{
// your code that involves "save"
}发布于 2009-05-18 07:44:22
尝试移动这条线
String filename = save.FileName;在IF块内部。在用户设置SaveDialog的属性之前,您正在为filename赋值。您需要了解,此行不会在您的filename变量和对话框的FileName属性之间创建永久链接。
发布于 2009-05-18 07:42:51
在调用ShowDialog之后,您可以从SaveFileDialog 获取文件名。您正在预先设置文件名。
https://stackoverflow.com/questions/876603
复制相似问题