0
我是新來的,有點新來java。 我遇到了問題。 我有一個非常簡單的程序,試圖創建PNG並將它們保存在用戶選定的文件夾中。 byteimage是AA專用字節[]:Eclipse代碼運行良好,罐子不是
byteimage = bcd.createPNG(300, 140, ColorSpace.TYPE_RGB, Color.BLACK, Color.BLACK);
的setpath()被調用的瀏覽按鈕的動作偵聽器內部
private void setPath() {
JFileChooser pathchooser = new JFileChooser();
pathchooser.setMultiSelectionEnabled(false);
pathchooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
pathchooser.setApproveButtonMnemonic(KeyEvent.VK_ENTER);
pathchooser.showDialog(this, "OK");
File f = pathchooser.getSelectedFile();
if (f != null) {
filepath = f.getAbsolutePath();
pathfield.setText(filepath);
}
}
字節至PNG方法看起來像這樣:
public void byteToPNG(String filename) {
try {
InputStream in = new ByteArrayInputStream(byteimage);
BufferedImage bufferedimg = ImageIO.read(in);
ImageIO.write(bufferedimg, "png", new File(filename));
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
這種方法如下所示:
byteToPNG(pathfield.getText() + System.getProperty("file.separator") + textfield.getText() + ".png");
textfield.getText()設置png的實際名稱。 構造內部,默認文件路徑被設置:
filepath = System.getProperty("user.dir");
pathfield.setText(filepath);
的代碼運行在Eclipse細,並將其在所需位置產生一個PNG圖像。 不幸的是,導出爲jar之後,它會啓動,但是當按下生成png的按鈕時,沒有任何反應。我認爲在InputStream或BufferedImage有問題,但我有點困惑。
感謝您的回答。字符串文件名是絕對的,我會嘗試在終端中運行jar。 – johnpeterman 2012-03-21 21:58:24