【发布时间】:2015-06-30 04:18:51
【问题描述】:
我一直在关注 EPPlus 上的 This 教程,但我对如何将下载位置设置为登录用户的“下载”文件夹感到头疼?我知道我的位置会是这个,但是他们是在不知道登录人员帐户信息的情况下分配它的一种方式吗?
C:\Users\laptop\Downloads
这是我的语法:
string location = "C:\\";
string filename = "EPPlusTest.xlsx";
using (ExcelPackage objExcelPackage = new ExcelPackage())
{
ExcelWorksheet objWorksheet = objExcelPackage.Workbook.Worksheets.Add("Sheet 1");
objWorksheet.Cells["A1"].LoadFromDataTable(dataTable, true);
using (ExcelRange objRange = objWorksheet.Cells["A1:XFD1"])
{
objRange.Style.Font.Bold = true;
objRange.Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
objRange.Style.VerticalAlignment = ExcelVerticalAlignment.Center;
}
using (ExcelRange dataRange = objWorksheet.Cells["A2:XFD20"])
{
dataRange.Style.HorizontalAlignment = ExcelHorizontalAlignment.Left;
dataRange.Style.VerticalAlignment = ExcelVerticalAlignment.Bottom;
}
FileStream objFileStrm = File.Create(filename);
objFileStrm.Close();
File.WriteAllBytes(location + filename, objExcelPackage.GetAsByteArray());
}
【问题讨论】:
-
您的问题与 EPPlus 或您提供的代码有什么关系?
-
你不能设置用户的下载位置——他们必须在他们自己的浏览器设置中这样做——或者为他们提供一个对话框来另存为......然后他们可以选择。这是浏览器的安全问题。
-
@Darren 如果您使用 HttpContext.Current.Response。它会将文件“下载”到您的“下载”文件夹(正是我想要的只是使用 EPPlus 语法而不是那种语法)在我当前的语法中,它将文件保存到登录的用户 C:驱动器。所以你可以硬编码一个下载位置。
-
@CoryNelson - 语法使用 EPPlus - 我在问是否可以添加任何语法来设置用户下载文件夹的保存位置。在我当前的代码中,它保存到登录的用户 C:\\ 驱动器。
-
EPPlus 不下载任何东西。发布您如何下载文件(ASP.NET?),而不是您的 EPPlus 代码。