我在servlet中收到FileOutputStream作为String,如何将其写入文件。
我尝试将字符串转换为字节,然后将其分配给新的FileOutputStream,它会生成文件,但表示格式已损坏。
我尝试了各种代码,但没有一个正常工作。
File file = new File("d:/file1.pdf");
String content = request.getParameter("TextB1");
try (FileOutputStream fop = new FileOutputStream(file)) {
// get the content in bytes
byte[] contentInBytes = content.getBytes();
fop.write(contentInBytes);
fop.flush();
fop.close();
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
}
答案 0 :(得分:0)
问题可能是因为如果是PDF文件,您需要解码内容。
这样的事情应该可行:
BASE64Decoder decoder = new BASE64Decoder();
byte[] decodedBytes = decoder.decodeBuffer(content.getBytes());