ファイルを開いたとき、または単にダイアログを閉じるときに、ファイル選択ダイアログでファイルを開こうとしています。ダイアログが再び表示され、2回閉じる必要があります。ここに私のコードは、第二の埋込みする1JFileChooserコンポーネントが奇妙に表示される
JFileChooser openFileChooser = new JFileChooser();
openFileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
openFileChooser.showOpenDialog(null);
openFileChooser.setCurrentDirectory(new File("."));
if (openFileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION){
input = new ObjectInputStream(new FileInputStream(openFileChooser.getSelectedFile()));
input.close();
}
とコード行の残りの部分を最初に作成する
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
// TODO add your handling code here:
ObjectInputStream input;
JFileChooser openFileChooser = new JFileChooser();
openFileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
openFileChooser.showOpenDialog(null);
openFileChooser.setCurrentDirectory(new File("."));
if (openFileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION){
input = new ObjectInputStream(new FileInputStream(openFileChooser.getSelectedFile()));
input.close();
}
javax.swing.JFrame openFileFrame = new javax.swing.JFrame();
openFileFrame.setLayout(new BorderLayout());
openFileFrame.setLocationRelativeTo(null);
openFileFrame.add(openFileChooser, BorderLayout.CENTER);
openFileFrame.pack();
openFileFrame.setVisible(true);
} catch (IOException ex) {
Logger.getLogger(GUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
あなたは歓迎です – mKorbel
@Truong Thanh Dungコードラインごとにステップコード行をデバッグする必要があります。[FileInputStreamをシミュレートしたときに例外はありません](http://www.java2s.com/Tutorial/Java/) 0236__Swing/1260__JFileChooser.htm) – mKorbel
Tks mate、私は最終的に儀式を得ました。ObjectOutputStreamで例外処理を行い、その変数がnullのときにnullpointerを表示するからです:) – babygau