首页 > 解决方案 > 使用 EPPlus 库使用 C# 在 FTP 上直接创建 Excel 文件

问题描述

我想在 FTP 服务器上创建一个 Excel 文件。我已经尝试在本地创建一个文件,它的工作原理是:如何在 FTP 而不是本地驱动器中创建它?

ExcelPkg.SaveAs(
  new FileInfo(@"C:\ExcelTest\" + DateTime.Now.ToString("yyyy-MM-dd--hh-mm-ss") + ".xlsx"))

我想直接在 FTP 中创建这个文件,而不是在本地创建,然后移动它。

标签: c#.netexcelftpepplus

解决方案


使用ExcelPackage.SaveAs接受 a 的重载Stream并将其传递给 FTP 请求流,例如:
Upload a streamable in-memory document (.docx) to FTP with C#?


我现在无法测试 EPPlus,但这应该可以:

WebRequest request = WebRequest.Create("ftp://ftp.example.com/remote/path/sheet.xlsx");
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(username, password);
using (Stream ftpStream = request.GetRequestStream())
{
    ExcelPkg.SaveAs(ftpStream);
}

推荐阅读