C# - 从URL下载PDF并将其转换为base64而不将其保存在服务器上

时间:2017-06-15 06:36:48

标签: c# download webclient

基本上我想要做的是从我从前端获取的URL中下载Web API内部的PDF文件,并直接将所述文件转换为base64字符串,而不将文件保存在文件系统上。

我已找到WebClient.Download(URL, File),但这意味着我必须保存文件。

所以有人知道任何其他可能对我有用的解决方案吗?

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码将 PDF 从网址下载到 base64 字符串格式。

string pdfUrl = "URL_TO_PDF";
using(WebClient client = new WebClient())
{
     var bytes = client.DownloadData(pdfUrl);
     string base64String = Convert.ToBase64String(bytes);
}

答案 1 :(得分:0)

Downloading pdf file using WebRequests

的第一个回答所述
var fileName = "output/" + date.ToString("yyyy-MM-dd") + ".pdf";
using (var stream = File.Create(fileName))
 resp.GetResponseStream().CopyTo(stream);

(resp是

 HttpWebResponse resp = (HttpWebResponse)request.GetResponse();

然后转换为base64

 String file = Convert.ToBase64String(stream);