import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.Random;
import javax.imageio.ImageIO;
public class CaptureScreen {
//图片格式
public static final String format = "png";
//图片保存路径
public static final String filepath = "e:\\test";
public static void captureScreen(String fileName, String folder) throws Exception {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle screenRectangle = new Rectangle(screenSize);
//设置起使坐标 x,y 及截屏长度和宽度 width,height
screenRectangle.setBounds(0, 0, 300, 300);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(screenRectangle);
//保存路径
File screenFile = new File(fileName);
if (!screenFile.exists()) {
screenFile.mkdir();
}
File f = new File(screenFile, folder);
ImageIO.write(image, format, f);
//自动打开
if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Desktop.Action.OPEN)) {
Desktop.getDesktop().open(f);
}
}
public static void main(String[] args) {
try {
File file = new File(filepath);
if(! file.exists()){
file.mkdir();
}
Random random = new Random();
String filename = random.nextInt(20) + ".png";
captureScreen(filepath, filename);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}