Beachten Sie, dass ich manchmal, wenn sich die obige Datei im Verzeichnis befand, nur eine eindeutige Zeichenfolge aus dem Dateinamen extrahieren wollte. Ich habe die Quelle überprüft, sie aber nicht verwendet, daher handelt es sich um einen Gedenkgottesdienst
Java SE 8 (jdk1.8.0_121)
GetFileName.java
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class GetFileName {
public static void main(String[] args) {
String fileLeadName = "hogehoge_"; //Erster Charakter
String fileEndName = "_hoge"; //Letzter Charakter
File file = new File("Pfadname des Dateiverzeichnisses");
File files[] = file.listFiles();
List<File> fileList = new ArrayList<File>();
for(File fileAndDir : files) {
//Listen Sie nur Dateinamen auf
if(fileAndDir.isFile()){
fileList.add(fileAndDir);
}
}
for(File originalFileName : fileList) {
// getName()Stringisiert mit
String fileName = originalFileName.getName();
//Bestimmen Sie, ob das erste und das letzte Zeichen enthalten sind
if(fileName.indexOf(leadFileName) != -1 && fileName.indexOf(endFileName) != -1) {
// fileLeadName.indexOf(fileLeadName)Ist 0, also weggelassen
String fileUniqueName = fileName.substring(fileLeadName.length()
,fileName.lastIndexOf(fileEndName));
System.out.println(fileUniqueName);
}
}
}
}
Ergebnis
huga
sample
test
Wenn die letzte Zeichenfolge keine feste Zeichenfolge wie ein Datum ist, betrachten Sie sie separat.
Wenn es wie oben durch "\ _" getrennt ist, verwenden Sie "lastIndexOf (fileEndName)" Ist es möglich, damit umzugehen, indem Sie es auf "lastIndexOf (" _ ")" setzen?
Recommended Posts