使用jfilechooser java进行动态文件扩展名筛选

使用jfilechooser java进行动态文件扩展名筛选,java,string,io,jfilechooser,filefilter,Java,String,Io,Jfilechooser,Filefilter,我正在使用FileNameExtensionFilter函数在jfilechooser 但是扩展的输入参数是字符串类型。 我想读取文本文件中的所有扩展名。 过滤器在构造函数中,我正在以Netbeans的形式开发一种记事本类型的应用程序。 解决这个问题或为这个问题提供更好的解决方案,我只想使用jfilechooser功能来选择和过滤文件 提前谢谢 这是代码 ///////////////FILE FILTER String str= ""txt","abc","xyz","wxy"; //all

我正在使用
FileNameExtensionFilter
函数在
jfilechooser
但是扩展的输入参数是字符串类型。 我想读取文本文件中的所有扩展名。 过滤器在构造函数中,我正在以Netbeans的形式开发一种记事本类型的应用程序。 解决这个问题或为这个问题提供更好的解决方案,我只想使用
jfilechooser
功能来选择和过滤文件

提前谢谢

这是代码

///////////////FILE FILTER
String str= ""txt","abc","xyz","wxy"; //all extensions from TXTfile

public MainFrame(){
    initComponents();
    fileChooser=new JFileChooser();
    FileNameExtensionFilter filter = new FileNameExtensionFilter("TEXTFILES",str,"text");
    fileChooser.setFileFilter(filter);
}

////////////////////////  FILE READER
String readFile() throws IOException {
BufferedReader br = new BufferedReader(new FileReader("ext.txt"));
try {
    StringBuilder sb = new StringBuilder();
    String line = br.readLine();

    while (line != null) {
        sb.append(line);
        sb.append("\n");
       line = br.readLine();
    }
    return sb.toString();
} finally {
    br.close();
}

根据JLS的说法,
FileNameExtensionFilter
方法采用“字符串…扩展”,所以我建议您在代码中进行修改

// all extensions from TXTfile
String[] extensions= {"txt","abc","xyz","wxy"}; 

JFileChooser fileChooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("TEXTFILES",extensions);
fileChooser.setFileFilter(filter);

int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: " 
+fileChooser.getName(new File("ext.txt")));//or you can use getSelectedFile() that  user has choosen.
    }

您可能正在寻找这个,我知道简单的实现,只需给出扩展名,就可以读取txt文件中的所有值。我无法将文件的输出分配给filenamefilter。因此,您正在寻找传递扩展名数组而不是单个扩展名?是,但我想从文本文件填充此数组。是,以相同的方式,我想从文本文件填充此字符串。从文本文件填充此字符串意味着什么?哪个文件?它是choosen file吗?我的意思是说IO操作以字符串数组形式检索整个文件,如。。。。。String[]extensions=readFile.read(“extensions.txt”)。我正在校正文本文件的所有扩展名,并希望字符串数组中的扩展名在filenamefilter函数中使用。Txt文件格式为。。。每行一个分机。。。Txt png..等