我正在用java在linux上编写一个屏幕截图程序。我怎样才能像在windows上那样使用ImageIO.write(),比如:

ImageIO.write(screenshot, "png", new File("c:/output.png"));

最佳答案

如果您正在编写屏幕捕获程序,则可能需要使用文件选择器来允许用户选择输出文件的位置。
下面是一个简单的示例,说明如何实现它:

JFileChooser jfc = new JFileChooser();
int returnVal = jfc.showSaveDialog();

if(returnVal == JFileChooser.APPROVE_OPTION) {
    File outputFile = jfc.getSelectedFile();
    ImageIO.write(screenshot, "png", outputFile);
}

这也将有助于使您的代码完全跨平台,而不是硬编码特定于平台的路径进入程序。

关于java - Linux:如何使用ImageIO.write()保存图像?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16640129/

10-11 16:55