プロジェクトのリソースをディスク上の別の場所にコピーしようとしています。これまでのところ、私はこのコードを持っている:リソースをJavaの別の場所にあるファイルにコピーする方法
if (!file.exists()){
try {
file.createNewFile();
Files.copy(new InputSupplier<InputStream>() {
public InputStream getInput() throws IOException {
return Main.class.getResourceAsStream("/" + name);
}
}, file);
} catch (IOException e) {
file = null;
return null;
}
}
を、それが正常に動作しますが、InputSupplier
クラスは廃止されましたので、私は何をしようとしている行うには良い方法があった場合、私は思っていました。
私はちょうど純粋なJavaソリューションを見つけて、それを投稿しようとしていましたが、あなたの編集を見ました。本当にありがとう! – NonameSL
あなたが表示する純粋なJavaバージョンは、Guavaバージョンとの重要な違いがあることに注意してください。リソースのストリームを閉じることも試みません。 Guavaのバージョンでは、ストリームが成功したか失敗したかにかかわらず、コピー後にストリームが閉じられることが保証されています。 – ColinD