是否可以从base64字符串创建pdf文件?

时间:2016-01-20 02:29:06

标签: java pdf base64

我有一个hl7文件,其中包含从编码的pdf派生的base64字符串。

是否可以从该base64重新创建pdf?

pdf to base64 --> ok
----------------------------
base64 to pdf --> is this possible?

2 个答案:

答案 0 :(得分:1)

有可能。你可以使用sun.misc.BASE64Decoder。

示例:

import java.io.*;

import sun.misc.BASE64Decoder;
/**
 * Kax7ux
 *
 */
public class App 
{
    public static void main( String[] args )
    {     
        String encodedBytes = "yourStringBase64"; 
        try {
            BASE64Decoder decoder = new BASE64Decoder();
            byte[] decodedBytes;
            FileOutputStream fop;
            decodedBytes = new BASE64Decoder().decodeBuffer(encodedBytes);
            File file = new File("path/file.pdf");
            fop = new FileOutputStream(file);

            fop.write(decodedBytes);

            fop.flush();
            fop.close();
            System.out.println("Created");
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

答案 1 :(得分:1)

@Clem您可以轻松使用 java.util

中的 Base64
   import java.util.Base64;

    public class App 
    {
        public static void main( String[] args )
        {  
            String pdfAsArrayByte = "JVBERi/8KNyAwIG9iago8PAovVHlwZS....";

            // Decode the Base64 arrayByte to PDF file
            DataSource source = new ByteArrayDataSource(Base64.getDecoder().decode(pdfAsArrayByte),"application/pdf");

            // The ,source, instance is now a true PDF file
        }
    }