我想让 jfilechooser 选择多种类型,但我的 fileinputstream 中出现错误,如下所示:
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
try {
JFileChooser ch = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
int c = ch.showOpenDialog(this);
ch.setMultiSelectionEnabled(true);
ch.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
ch.setMultiSelectionEnabled(true);
if (c == JFileChooser.APPROVE_OPTION) {
File[] f = ch.getSelectedFiles();
FileInputStream in = new FileInputStream();
/// the error start from in here
byte b[] = new byte[in.available()];
in.read(b);
Data data = new Data();
lblNewLabel.setText(ch.getSelectedFile().getAbsolutePath());
data.setName(lblNewLabel.getText().trim());
data.setFile(b);
out.writeObject(data);
out.flush();
textArea.append("send 1 file ../n");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e, "Error",
JOptionPane.ERROR_MESSAGE);
}
}`
每个人都可以修复它吗?
最佳答案
尽管您选择了多个文件,但您似乎正在使用 .getSelectedFile()
方法。
您必须使用 .getSelectedFiles()
方法(如代码示例第 9 行中所示)并迭代 File[]
。
关于java - jfilechooser,保存多个文件,图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60521216/