我有这个程序将信息放入excel文件,我有一个版本,我没有实现filechooser和抛出的excel在excel表中打印这样的信息:
-line1
-line2
-line3
但是我添加了filechooser的新版本会在excel表中抛出这样的信息:
-line1
(空行)
(空行)
(空行)
-line2
(空行)
(空行)
(空行)
(空行)
(空行)
-line3
我不知道filechooser是否是原因,但必须是因为我使用了与之前相同的代码而没有任何改变。我尝试更换计数器,但它没有用。我希望你能帮我提一些线索。
我有这个代码用于filechoosers:
JFileChooser chooser1 = new JFileChooser1();
int returnVal = chooser.showOpenDialog(chooser1);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this PDF file: " +
chooser1.getSelectedFile().getName());
}
File file = chooser2.getSelectedFile();
JFileChooser chooser2 = new JFileChooser2();
int returnVal = chooser.showOpenDialog(chooser2);
if(returnVal2 == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this excel file: " +
chooser2.getSelectedFile().getName());
}
File Excel = chooser2.getSelectedFile();
JFileChooser chooser3 = new JFileChooser1();
int returnVal3 = chooser.showOpenDialog(chooser3);
chooser3.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this destination: " +
chooser3.getSelectedFile().getName());
}
File path = chooser3.getCurrentDirectory();
//Then here starts the other process
是的,我在这个程序中使用3个文件追踪器,1个用于选择pdf文件,然后另一个用于选择excel文件,然后第三个用于选择存储结果的目录。它一个接一个地出现。
程序的第一个块是文件选择器,然后从pdf中提取将存储在先前选择的excel副本中的信息,然后使用该信息抛出Output excel。但是这些信息不是一行接一行有空行,就像我之前解释的那样
答案 0 :(得分:0)
我不知道chooser
是什么,但是,假设它是第4个JFileChooser,我相信像
int returnVal = chooser.showOpenDialog(chooser1);
是错误的 - 这些总是打开chooser
而不是作为参数给出的JFileChooser。改为:
int returnVal = chooser1.showOpenDialog(null);
// or use the main frame/window instead of null
参数是对话框的父组件。
Obs:你可以在调用showOpenDialog
并获得他选择的文件/目录后重用JFileChooser。
无法写任何有关循环的内容,因为问题中没有发布...