java中的FileChooser可以修改for循环吗?

时间:2017-05-31 20:18:57

标签: java jfilechooser

我有这个程序将信息放入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。但是这些信息不是一行接一行有空行,就像我之前解释的那样

1 个答案:

答案 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。

无法写任何有关循环的内容,因为问题中没有发布...