使用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..等