我一直试图理解使用SaveFileDialog的http://msdn.microsoft.com/en-us/library/sfezx97z.aspx,但我很难理解。我有以下代码:
FileInfo existingFile = new FileInfo("C:\\Users\\cle1394\\Desktop\\Apple Foreign Tax Payment Sample Layout Proposed - Sample Data.xlsx");
ConsoleApplication2.Program.ExcelData data = ConsoleApplication2.Program.GetExcelData(existingFile);
var json = new JavaScriptSerializer().Serialize(data);
如何将json
的内容输出到.json
或.txt
文件?
我想让用户看到一个链接/按钮,点击下载/将文件保存到计算机上的某个位置,或者只是显示保存文件对话框,以便他们可以将文件保存到某个位置在他们的电脑上。
编辑(让OP评论哪些部分不清楚):
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.ShowDialog();
if(saveFileDialog1.FileName != "")
{
File.WriteAllText(saveFileDialog1.FileName,json);
}
答案 0 :(得分:2)
你正在寻找这个,然后:
File.WriteAllText(@"c:\some\path\json.txt",json);
请注意,它将使用UTF8编码保存文件而不使用字节顺序标记。如果您需要BOM,则需要使用File.WriteAllText(path, content, Enconding);
更新 - 使用SaveFileDialog添加示例:
if(!string.IsNullOrEmpty(saveFileDialog.FileName))
{
//saveFileDialog.FileName should contain the full path
//according to the documentation: http://msdn.microsoft.com/en-us/library/system.windows.forms.filedialog.filename.aspx
File.WriteAllText(saveFileDialog.FileName,json);
}