【问题标题】:How can i make .png my default file extension in java我怎样才能使.png成为我在java中的默认文件扩展名
【发布时间】:2017-04-13 16:11:24
【问题描述】:

这是我用 .png 扩展名保存图像的 sn-p:

 WritableImage img = rectCanvas.snapshot(new SnapshotParameters(), null);
        JFileChooser chooser = new JFileChooser();
        chooser.setCurrentDirectory(new File(System.getProperty("user.home")));
        int result = chooser.showSaveDialog(null);
        if (result == JFileChooser.APPROVE_OPTION) {
            try {
        File fileToSave = chooser.getSelectedFile();
                ImageIO.write(SwingFXUtils.fromFXImage(img, null), "png", fileToSave);
            } catch (IOException ex) {
                Logger.getLogger(GuiClass.class.getName()).log(Level.SEVERE, null, ex);
            }
        }

我希望 .png 成为我的默认文件扩展名。但是,当我想将图像保存到文件并打开保存对话框时,我必须以以下格式输入文件名:filename.png。我怎样才能摆脱 .png 部分并使其成为默认值?

【问题讨论】:

  • 调用chooser.getSelectedFile()得到的文件扩展名是什么?
  • 当我查看已保存文件的属性时,我看到了 .file 。这是回答问题还是我弄错了问题?
  • @melar 你打开一个文件选择器。你用那个文件选择器做什么?你输入一个新的文件名吗?如果是这样,你输入什么?您选择现有文件吗?如果有,它的名称和扩展名是什么?
  • 对不起,我明白了。是的,我选择目录并输入文件名,但不输入扩展名。我只在 write 方法中指定文件格式
  • 现在请回答气垫船问你的问题:chooser.getSelectedFile()完整文件名是什么?

标签: java save default.png image-file


【解决方案1】:

您将什么设置为“fileToSave”的值?如果那不是 .png,它不应该是 png 扩展名。

请参阅 oracle 文档中的以下内容:

try {
    // retrieve image
    BufferedImage bi = getMyImage();
    File outputfile = new File("saved.png");
    ImageIO.write(bi, "png", outputfile);
} catch (IOException e) {
    ...
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多