자바로 :
나는이 byte[]
파일을 나타냅니다합니다.
나는 파일이 쓰기 어떻게 (예. C:\myfile.pdf
)
InputStream으로 완료되었다는 것을 알고 있지만 해결할 수없는 것 같습니다.
답변
사용 아파치 코 몬즈 IO
FileUtils.writeByteArrayToFile(new File("pathname"), myByteArray)
또는 자신을 위해 일하는 것을 고집한다면 …
try (FileOutputStream fos = new FileOutputStream("pathname")) {
fos.write(myByteArray);
//fos.close(); There is no more need for this line since you had created the instance of "fos" inside the try. And this will automatically close the OutputStream
}
답변
라이브러리가없는 경우 :
try (FileOutputStream stream = new FileOutputStream(path)) {
stream.write(bytes);
}
와 구글 구아바 :
Files.write(bytes, new File(path));
와 아파치 코 몬즈 :
FileUtils.writeByteArrayToFile(new File(path), bytes);
이러한 모든 전략은 어느 시점에서 IOException을 잡아야합니다.
답변
다음을 사용하는 다른 솔루션 java.nio.file
:
byte[] bytes = ...;
Path path = Paths.get("C:\\myfile.pdf");
Files.write(path, bytes);
답변
또한 Java 7부터 java.nio.file.Files가있는 한 줄 :
Files.write(new File(filePath).toPath(), data);
여기서 data는 바이트 []이고 filePath는 문자열입니다. StandardOpenOptions 클래스를 사용하여 여러 파일 열기 옵션을 추가 할 수도 있습니다. try / catch로 던지기 또는 서라운드를 추가하십시오.