如何将TextBox3中的内容保存为无默认路径的文本文件
解决方案
根据你使用的项目类型选择对应修改方案即可:
1. 桌面端项目(WinForm)
通过SaveFileDialog组件唤起路径选择窗口,让用户自主指定保存位置,修改后代码如下:
protected void Button2_Click(object sender, EventArgs e) { SaveFileDialog saveDialog = new SaveFileDialog(); // 配置文件筛选规则 saveDialog.Filter = "文本文件(*.txt)|*.txt"; // 设置默认保存的文件名 saveDialog.FileName = "Text.txt"; // 点击确认后执行保存逻辑 if (saveDialog.ShowDialog() == DialogResult.OK) { // using语法会自动释放文件流资源,无需手动调用Close using (TextWriter txt = new StreamWriter(saveDialog.FileName)) { txt.Write(TextBox3.Text); } } }
如果是WPF项目,替换对话框类为Microsoft.Win32.SaveFileDialog,判断条件改为if(saveDialog.ShowDialog() == true)即可。
2. ASP.NET Web项目
你原有的写法是将文件写入服务器固定路径,要让浏览器端用户自选保存位置,需要返回文件流触发浏览器下载:
protected void Button2_Click(object sender, EventArgs e) { Response.Clear(); Response.ContentType = "text/plain"; // 配置下载文件名,浏览器会自动唤起保存弹窗 Response.AddHeader("Content-Disposition", "attachment;filename=Text.txt"); Response.Write(TextBox3.Text); Response.End(); }
内容的提问来源于stack exchange,提问作者John Wick
相关产品推荐
相关产品推荐

