用java写出将文件名和文件后缀拆开的代码
时间: 2024-05-14 08:13:27 浏览: 10
好的,这个问题我可以回答。你可以使用Java的File类的方法,例如:
```
String fileName = "example.docx";
String[] splitName = fileName.split("\\."); // 注意:点号需要进行转义
String name = splitName[0]; // 文件名
String extension = splitName[1]; // 文件后缀
System.out.println("文件名:" + name);
System.out.println("文件后缀:" + extension);
```
这段代码会将文件名和文件后缀拆开并打印出来。
相关问题
java代码根据文件名和文件路径删除文件
可以使用Java提供的File类来删除文件,可以根据文件名和文件路径来删除文件。以下是一个简单的示例代码:
```java
import java.io.File;
public class DeleteFileExample {
public static void main(String[] args) {
String filePath = "C:\\Users\\user\\Desktop\\test.txt"; // 文件路径
File file = new File(filePath); // 创建File对象
if (file.delete()) { // 删除文件
System.out.println("文件删除成功!");
} else {
System.out.println("文件删除失败!");
}
}
}
```
在上面的代码中,首先定义了一个文件路径,然后创建一个File对象来表示该文件。接着使用File对象的`delete()`方法来删除文件,如果删除成功,则输出“文件删除成功!”;否则输出“文件删除失败!”。
使用java实现对文件名和文件路径做合法性校验
在Java中,可以通过正则表达式来校验文件名和文件路径的合法性。以下是示例代码:
```java
import java.util.regex.Pattern;
public class FileValidator {
// 文件名合法性校验
public static boolean isValidFileName(String fileName) {
// 文件名不允许包含以下字符:\ / : * ? " < > |
String regex = "[\\\\/:*?\"<>|]";
Pattern pattern = Pattern.compile(regex);
return !pattern.matcher(fileName).find();
}
// 文件路径合法性校验
public static boolean isValidFilePath(String filePath) {
// 文件路径不允许包含以下字符:\ : * ? " < > |
String regex = "[\\:*?\"<>|]";
Pattern pattern = Pattern.compile(regex);
return !pattern.matcher(filePath).find();
}
}
```
使用示例:
```java
public class Main {
public static void main(String[] args) {
String fileName = "test.txt";
String filePath = "C:\\Users\\test\\Documents\\test.txt";
if (FileValidator.isValidFileName(fileName)) {
System.out.println("文件名合法");
} else {
System.out.println("文件名不合法");
}
if (FileValidator.isValidFilePath(filePath)) {
System.out.println("文件路径合法");
} else {
System.out.println("文件路径不合法");
}
}
}
```
该示例代码中,使用了正则表达式来匹配文件名和文件路径中不允许出现的特殊字符。如果匹配到了特殊字符,则说明文件名或者路径不合法。