AddExtension属性在C#2.0中是如何工作的?
我想打开一个保存文件对话框,让用户输入一个文件名,如果他们忘记了.csv扩展名,就把它加上 SaveFileDialog AddExtension属性似乎可以工作,但它不能。我甚至将DefaultExt属性设置为.csv,但仍然没有添加任何内容。我的文件保存得很好,但是没有扩展名,所以用户不能双击文件并在Excel中打开它 我肯定错过了一些明显的东西。这是我得到的AddExtension属性在C#2.0中是如何工作的?,c#,c#-2.0,C#,C# 2.0,我想打开一个保存文件对话框,让用户输入一个文件名,如果他们忘记了.csv扩展名,就把它加上 SaveFileDialog AddExtension属性似乎可以工作,但它不能。我甚至将DefaultExt属性设置为.csv,但仍然没有添加任何内容。我的文件保存得很好,但是没有扩展名,所以用户不能双击文件并在Excel中打开它 我肯定错过了一些明显的东西。这是我得到的 SaveFileDialog sfd = new SaveFileDialog(); sfd.Def
SaveFileDialog sfd = new SaveFileDialog();
sfd.DefaultExt = "*.csv";
sfd.Filter = "Comma Separated(*.csv)|*.*";
if (sfd.ShowDialog() == DialogResult.OK)
{
// Do my file saving
}
尝试对DefaultExt
仅使用“csv”
-此外,您应该使用这个(它是IDisposable
):
它不会固定在对话框中的扩展名上,尽管它应该这样做。相反,当对话框关闭时,它会附加到sfd.filename的扩展名。正如我所怀疑的,我遗漏了一些明显的东西。堆栈溢出,再次进行营救。这可能为我的项目节省了100美元。
using (SaveFileDialog sfd = new SaveFileDialog())
{
sfd.AddExtension = true;
sfd.DefaultExt = "csv";
sfd.Filter = "Comma Separated(*.csv)|*.*";
if (sfd.ShowDialog() == DialogResult.OK)
{
// Do my file saving
}
}