vb.net 如何使用保存文件对话框保存文件
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/21719126/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to save the file using save file dialog box
提问by Dolphin
I want to save any type of file using save file dialog box... My requirement is based upon the selection of list box(it contain various type of file like .txt,.xls) i want to provide download option using save file dialog box...if user got select .txt file the file store in text format based on the file extension i want to store file...Those file i want to save same to same file copy into the particular location
我想使用保存文件对话框保存任何类型的文件...我的要求是基于列表框的选择(它包含各种类型的文件,如 .txt、.xls)我想使用保存文件对话框提供下载选项框...如果用户选择 .txt 文件,则根据我要存储的文件扩展名以文本格式存储文件...我想将这些文件保存到相同的文件副本到特定位置
pl z help me
请帮助我
Dim digresult As DialogResult = MessageBox.Show("Do you want to download ? ", "View", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If digresult = Windows.Forms.DialogResult.Yes Then
downlddialog.Filter = "All files (*.*)|*.*"
downlddialog.Title = "Save a file"
downlddialog.RestoreDirectory = True
downlddialog.OverwritePrompt = True
downlddialog.ShowDialog()
Dim dr As String = downlddialog.FileName
回答by Suraj
System.Windows.Forms.SaveFileDialog saveFileDialog1;
saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
DialogResult dr= saveFileDialog1.ShowDialog();
if (dr==DialogResult.OK)
{
string filename = saveFileDialog1.FileName;
//save file using stream.
}
you can use this code this code is in C# instead of MessageBox.Showuse System.Windows.Forms.SaveFileDialog
您可以使用此代码此代码在 C# 中而不是MessageBox.Show使用System.Windows.Forms.SaveFileDialog
回答by Keshavdas M
You can pull out the file extension and then appropriate file writing logic for particular file extension see sample code below,
您可以提取文件扩展名,然后为特定文件扩展名提取适当的文件写入逻辑,请参阅下面的示例代码,
SaveFileDialog oSaveFileDialog = new SaveFileDialog();
oSaveFileDialog.Filter = "All files (*.*) | *.*";
if (oSaveFileDialog.ShowDialog() == DialogResult.OK)
{
string fileName = oSaveFileDialog.FileName;
string extesion = Path.GetExtension(fileName);
switch (extesion)
{
case ".txt"://do something here
break;
case ".xls"://do something here
break;
default://do something here
break;
}
}
回答by Ofir
This will do the job...
这将完成工作......
the filter property is optional - it just if you want the user save a specific file type
filter 属性是可选的 - 如果您希望用户保存特定的文件类型
VB:
VB:
// Displays a SaveFileDialog so the user can save the Image
SaveFileDialog ^ saveFileDialog1 = new SaveFileDialog();
saveFileDialog1->Filter =
"JPeg Image|*.jpg|Bitmap Image|*.bmp|Gif Image|*.gif";
saveFileDialog1->Title = "Save an Image File";
saveFileDialog1->ShowDialog();
// If the file name is not an empty string, open it for saving.
if(saveFileDialog1->FileName != "")
{
// Saves the Image through a FileStream created by
// the OpenFile method.
System::IO::FileStream ^ fs =
safe_cast<System::IO::FileStream*>(
saveFileDialog1->OpenFile());
// Saves the Image in the appropriate ImageFormat based on
// the file type selected in the dialog box.
// Note that the FilterIndex property is one based.
switch(saveFileDialog1->FilterIndex)
{
case 1 :
this->button2->Image->Save(fs,
System::Drawing::Imaging::ImageFormat::Jpeg);
break;
case 2 :
this->button2->Image->Save(fs,
System::Drawing::Imaging::ImageFormat::Bmp);
break;
case 3 :
this->button2->Image->Save(fs,
System::Drawing::Imaging::ImageFormat::Gif);
break;
}
fs->Close();
}
C#
C#
// Displays a SaveFileDialog so the user can save the Image
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "JPeg Image|*.jpg|Bitmap Image|*.bmp|Gif Image|*.gif";
saveFileDialog1.Title = "Save an Image File";
saveFileDialog1.ShowDialog();
// If the file name is not an empty string open it for saving.
if(saveFileDialog1.FileName != "")
{
// Saves the Image via a FileStream created by the OpenFile method.
System.IO.FileStream fs =
(System.IO.FileStream)saveFileDialog1.OpenFile();
// Saves the Image in the appropriate ImageFormat based upon the
// File type selected in the dialog box.
// NOTE that the FilterIndex property is one-based.
switch(saveFileDialog1.FilterIndex)
{
case 1 :
this.button2.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case 2 :
this.button2.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Bmp);
break;
case 3 :
this.button2.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Gif);
break;
}
fs.Close();
}

