将base64Binary转换为pdf

我有base64Binary的原始数据。

string base64BinaryStr = "J9JbWFnZ......" 

我怎样才能制作pdf文件? 我知道它需要一些转换。 请帮我。

第1步是从base64字符串转换为字节数组:

 byte[] bytes = Convert.FromBase64String(base64BinaryStr); 

第2步是将字节数组保存到磁盘:

 System.IO.FileStream stream = new FileStream(@"C:\file.pdf", FileMode.CreateNew); System.IO.BinaryWriter writer = new BinaryWriter(stream); writer.Write(bytes, 0, bytes.Length); writer.Close(); 
 using (FileStream stream = System.IO.File.Create("c:\\file.pdf")) { byte[] byteArray = Convert.FromBase64String(base64BinaryStr); stream.Write(byteArray, 0, byteArray.Length); } 

base64BinaryStr – 来自webservice SOAP消息

 byte[] bytes = Convert.FromBase64String(base64BinaryStr); 

您需要做的就是通过任何Base64解码器运行它,它将您的数据作为字符串并传回一个字节数组。 然后,只需在文件名中用pdf写出该文件。 或者,如果要将其传输回浏览器,只需将字节写入输出流,在标题中标记相应的mime类型。

大多数语言都有内置的方法可以转换为/从Base64转换。 或者使用您的特定语言的简单Google将返回您可以使用的众多实现。 回到Base64的过程非常简单,甚至可以由新手开发人员实现。

我知道这个问题落后了。 但也许我可以帮助这个代码的人。

我甚至不必在硬盘上写任何文件。 😉

 Response.AddHeader("Content-Type", "application/pdf"); Response.AddHeader("Content-Length", base64Result.Length.ToString()); Response.AddHeader("Content-Disposition", "inline;"); Response.AddHeader("Cache-Control", "private, max-age=0, must-revalidate"); Response.AddHeader("Pragma", "public"); Response.BinaryWrite(Convert.FromBase64String(base64Result)); 

注意:变量’base64Result’包含Base64-String:“JVBERi0xLjMgCiXi48 / TIAoxI ……”

快乐的编码! 😉

首先将Bas64字符串转换为byte []并将其写入文件。

 byte[] bytes = Convert.FromBase64String(base64BinaryStr); File.WriteAllBytes(@"FolderPath\pdfFileName.pdf", bytes );