将base64Binary转换为pdf

时间:2009-10-26 19:56:15

标签: c# pdf binary

我有base64Binary的原始数据。

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

如何制作pdf档案?我知道它需要一些转换。请帮帮我。

6 个答案:

答案 0 :(得分:28)

第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();

答案 1 :(得分:13)

using (FileStream stream = System.IO.File.Create("c:\\file.pdf"))
{
    byte[] byteArray = Convert.FromBase64String(base64BinaryStr);
    stream.Write(byteArray, 0, byteArray.Length);
}

答案 2 :(得分:3)

base64Binary String - 来自Web服务SOAP消息

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

答案 3 :(得分:2)

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

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

答案 4 :(得分:1)

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

我甚至不必在硬盘上写任何文件。 ; - )

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 ......”

快乐的编码! ; - )

答案 5 :(得分:1)

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

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