Java如何实现pdf转base64以及怎么反转?
在Java中,要实现PDF转Base64,可以使用java.util.Base64
类。反转则是Base64解码。以下是实现这两个功能的示例代码:
import java.util.Base64;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.io.IOException;
public class PdfToBase64 {
// PDF转Base64
public static String encodePdfToBase64(String pdfFilePath) throws IOException {
byte[] fileContent = Files.readAllBytes(Paths.get(pdfFilePath));
return Base64.getEncoder().encodeToString(fileContent);
}
// Base64转PDF
public static void decodeBase64ToPdf(String base64Content, String outputPdfPath) throws IOException {
byte[] fileContent = Base64.getDecoder().decode(base64Content);
Files.write(Paths.get(outputPdfPath), fileContent);
}
public static void main(String[] args) {
try {
// PDF转Base64示例
String pdfFilePath = "path/to/your/file.pdf";
String base64String = encodePdfToBase64(pdfFilePath);
System.out.println("Base64 String: " + base64String);
// Base64转PDF示例
String outputPdfPath = "path/to/output/file.pdf";
decodeBase64ToPdf(base64String, outputPdfPath);
System.out.println("PDF decoded and saved to: " + outputPdfPath);
} catch (IOException e) {
e.printStackTrace();
}
}
}
确保在实际应用中处理好异常和文件路径。以上代码中,encodePdfToBase64
方法将PDF文件的内容读取为字节数组,并使用Base64进行编码。decodeBase64ToPdf
方法将Base64编码的字符串解码为字节数组,并写入到新的PDF文件中。
评论已关闭