asp.net保存Excel文件时文件名的问题

wpk_wpk 2013-09-30 12:09:11
我根据需要将页面中的值保存到excel文件中,在保存时我用excel.saveWorkSpace保存文件,但是文件的默认名怎么改成自己想要的,它默认为Sheet1
着急,大虾们,帮帮忙啊,小弟第一次在csdn里发帖,如有不周还请谅解
...全文
150 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wpk_wpk 2013-10-11
  • 打赏
  • 举报
回复
一楼讲了很多,虽然最后我自己的那种方法还是没有找到解决办法,还是谢谢楼上那些大虾的讲解,我换了种方法,先保存再下载。
Nick_Ngai 2013-09-30
  • 打赏
  • 举报
回复
另外如下不知是否對你有幫助: FileInfo fi = new FileInfo(newPath);//excelFile为文件在服务器上的地址 HttpResponse contextResponse = HttpContext.Current.Response; contextResponse.Clear(); contextResponse.Buffer = true; contextResponse.Charset = "UTF-8"; System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("Excel名稱.xls", System.Text.Encoding.UTF8)); contextResponse.AppendHeader("Content-Length", fi.Length.ToString()); contextResponse.ContentEncoding = Encoding.Default; contextResponse.ContentType = "application/ms-excel";//這個是保存的類型,我這裡是.xls contextResponse.WriteFile(fi.FullName); contextResponse.Flush(); int indexSub = newPath.LastIndexOf(@"\"); string locationSub = ""; locationSub = newPath.Substring(0, indexSub); System.IO.DirectoryInfo filePath = new System.IO.DirectoryInfo(locationSub);
  • 打赏
  • 举报
回复
ConExcel.Worksheet worksheet = worksheet.Name = "Sheet名字"; 1楼正解!
Nick_Ngai 2013-09-30
  • 打赏
  • 举报
回复
設置worksheet.Name = "Sheet名字";如下: #region 创建Excel及worksheet ConExcel.Workbooks workbooks = xlApp.Workbooks; ConExcel.Workbook workbook = workbooks.Add(ConExcel.XlWBATemplate.xlWBATWorksheet); ConExcel.Range range = null; ConExcel.Worksheet worksheet = (ConExcel.Worksheet)workbook.Worksheets.get_Item(workbook.Worksheets.Count); workbook.Worksheets.Add(Type.Missing, worksheet, Type.Missing, Type.Missing);//取得sheet1 worksheet.Name = "Sheet名字"; #endregion
Nick_Ngai 2013-09-30
  • 打赏
  • 举报
回复
引用 6 楼 wpk8023 的回复:
[quote=引用 5 楼 anboat 的回复:] using ConExcel = Microsoft.Office.Interop.Excel; 引用了Microsoft.Office.Interop.Excel.dll
那我那样写也没有错吧,最后我是这样保存的 worksheet.Application.DisplayAlerts = false;//显示提示信息 worksheet.Name = fileName; //workbook.SaveAs(, missing, missing, missing, missing, missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing); excel.SaveWorkspace(fileName); 但是为什么弹出框的默认文件名还是sheet1,而不是我想要的那个fileName。麻烦您了[/quote] 不好意思,这个我也不太清楚,我用的是如下方式保存: FileInfo fi = new FileInfo(newPath);//newPath为文件在服务器上的地址 HttpResponse contextResponse = HttpContext.Current.Response; contextResponse.Clear(); contextResponse.Buffer = true; contextResponse.Charset = "UTF-8"; System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("Excel名稱.xls", System.Text.Encoding.UTF8)); contextResponse.AppendHeader("Content-Length", fi.Length.ToString()); contextResponse.ContentEncoding = Encoding.Default; contextResponse.ContentType = "application/ms-excel"; contextResponse.WriteFile(fi.FullName); contextResponse.Flush();
wpk_wpk 2013-09-30
  • 打赏
  • 举报
回复
引用 5 楼 anboat 的回复:
using ConExcel = Microsoft.Office.Interop.Excel; 引用了Microsoft.Office.Interop.Excel.dll
那我那样写也没有错吧,最后我是这样保存的 worksheet.Application.DisplayAlerts = false;//显示提示信息 worksheet.Name = fileName; //workbook.SaveAs(, missing, missing, missing, missing, missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing); excel.SaveWorkspace(fileName); 但是为什么弹出框的默认文件名还是sheet1,而不是我想要的那个fileName。麻烦您了
Nick_Ngai 2013-09-30
  • 打赏
  • 举报
回复
using ConExcel = Microsoft.Office.Interop.Excel; 引用了Microsoft.Office.Interop.Excel.dll
wpk_wpk 2013-09-30
  • 打赏
  • 举报
回复
引用 1 楼 anboat 的回复:
設置worksheet.Name = "Sheet名字";如下:
#region 创建Excel及worksheet
ConExcel.Workbooks workbooks = xlApp.Workbooks;
ConExcel.Workbook workbook = workbooks.Add(ConExcel.XlWBATemplate.xlWBATWorksheet);
ConExcel.Range range = null;

ConExcel.Worksheet worksheet = (ConExcel.Worksheet)workbook.Worksheets.get_Item(workbook.Worksheets.Count);
workbook.Worksheets.Add(Type.Missing, worksheet, Type.Missing, Type.Missing);//取得sheet1
worksheet.Name = "Sheet名字";
#endregion

ConExcel是什么?我这里是这样的

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧