我的文件名为Codex_file001.zip。我想在写入文件之前删除前缀Codex_。任何帮助,将不胜感激。
File f=new File("Codex_file001.zip");
String s = f.getName();
String[] splitted = s.split("_");
File new1 = new File(splitted[1]);
Files.copy(f, new1);
f.delete();
我想用文件file001.zip保存该文件。
答案 0 :(得分:1)
会是这样的:
File f = new File("Codex_test.txt");
String fName = f.getName();
String newFName = fName.substring(fName.indexOf("_")+1);
f.renameTo(new File(newFName));
您可以结合使用substring和indexOf来确定起始字符的位置。然后重命名为以创建一个新文件。
答案 1 :(得分:0)
您可以检查String是否包含_
,然后吐出,例如:
private String removeCharsBeforeUnderscore(String input) {
return input.contains("_") ? input.split("_")[1] : input;
}
并这样称呼它:
System.out.println(removeCharsBeforeUnderscore("Codex_file001"));
即使String没有下划线字符也可以。
答案 2 :(得分:0)
使用带有replaceFirst的正则表达式模式
String test = "Codex_file001.zip";
System.out.println(test.replaceFirst(".*?_", ""));
输出:
file001.zip