我应该在我的代码中的什么地方包含一条语句,以便它根据已经编码的扩展名和用户输入的文件名进行搜索?
private void btnSearchMouseClicked(java.awt.event.MouseEvent evt) {
File folder = new File(txtLocation.getText());
String name = new String (txtName.getText());
if(folder.isDirectory() == true){
String [] files = folder.list();
String fileNames = "";
for(int i=0; i<files.length; i++){
int index = files[i].indexOf(".");
String extension = files[i].substring(index);
if(extension.equals(".jpg")==true ){
fileNames += "\n" + files[i];
}
}
txtListOfFiles.setText("Files found:" + fileNames);
}
最佳答案
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.Scanner;
public class DirectoryContents {
public static void main(String[] args) throws IOException {
File f = new File("c:\\temp\\"); // current directory
Scanner myObj = new Scanner(System.in); // Create a Scanner object
System.out.println("Enter file ext:");
final String fileExt = myObj.nextLine(); // Read user input
System.out.println("file ext is: " + fileExt);
myObj.close();
File[] files = f.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith("." +fileExt);
}
});
for (File file : files) {
if (file.isDirectory()) {
System.out.print("directory:");
} else {
System.out.print(" file:");
}
System.out.println(file.getCanonicalPath());
}
}
}
关于java - 如何按用户输入的扩展名和名称搜索文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57698944/