1
NIOライブラリのFiles.copyを使用するプログレスバーを更新する方法があるかどうかは、ワーカースレッドでファイルをダウンロードするために使用されているのでしょうか。以下のコード。nioファイルを追加するプログレスバーをコピーする
Task<Void> task = new Task<Void>() {
@Override
public Void call() {
Platform.runLater(new Runnable() {
@Override
public void run() {
try (InputStream in = download.openStream()){
Files.copy(in, path, StandardCopyOption.REPLACE_EXISTING);
}catch(Exception e){
System.out.println("file download");
}
}
});
Platform.runLater(
() -> view.enableButton()
);
return null;
}
};
が、私は仕事への結合を試みたプログレスバーは、ですが、やっているようだそのすべてがダウンロードボタンを再度有効にすぐにバグを引き起こすとされます。
をプログレスバーにあなた
Task
をバインド?私はプログレスバーでループを使用してファイルをダウンロードする他の方法を見てきましたが、この解決策は最も簡単に思えました。ダウンロードの進行状況を表示したいのであれば、私はここにチェックしました。 。 – msd94@ msd94進歩を得るためには、 'Files.copy'を一回呼び出す代わりに' FileInputStream.read() 'と' FileOutputStream.write() 'を使わなければならないかもしれません。 – aKilleR