現在、Robot機能を使用してスクリーンキャプチャを作成しようとしています。今のところ私はすでにボタンを使ってスクリーンショットし、イメージの形で保存することができます。今私は同じことをしたいが、私はscreenshot1.png、screenshot2.pngのような別のファイル名を生成したい。 forループを使ってランダムに数値を生成する方法を知っていますか?Java:Robotスクリーンキャプチャのランダムファイル名を生成
これが私の現在のJava動作するコードです:
private void jbtnCaptureActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try {
Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
Robot ro = new Robot();
BufferedImage capture = ro.createScreenCapture(screenRect);
File f;
f = new File("myimage1.jpg");
ImageIO.write(capture, "jpg", f);
System.out.println("Success");
} catch (Exception e){
System.out.println("Unable to capture the screen" + e);
}
}
誰かがこの上で私を助けることができます。前もって感謝します。関数の外擬似乱数発生器を初期化し、別のスクリーンショットからそれを維持、もちろん
Random rnd = new Random();
String filename = "screenshot" + rnd.nextInt() + ".png";
:
.. [X] .JPG、なしファイルまで、数をインクリメントすると、その名前に存在するファイル名の存在をチェックしませ「ランダム」であるか?ランダムなことは、ファイル名でスクリーンキャプチャのシーケンスを伝えることができないことを意味します。ランダムには、ファイル名が重複している可能性もあります。 –
それで@AdrianShumを行うには良い方法がありますか?なぜなら私は、目的を達成するために複数の画像を表示する必要があるからです。 – anonymous5671
あなたのアプリケーションで実行中のシーケンス番号を保持することはできませんか? –