设计一个类,该类实现对输入的文件名的各个部分进行解析的功能。即 完成下列函数功能: String getFullPath() String getPath() //只有路径 String getFileName() //仅含文件名,没有路径 String getExtension() //只有扩展名。如果没有扩展名,则返回空串
时间: 2023-02-06 18:55:46 浏览: 57
这是一个示例的实现:
```
class FileNameParser {
private String fullPath;
private String path;
private String fileName;
private String extension;
public FileNameParser(String fullPath) {
this.fullPath = fullPath;
parseFullPath();
}
private void parseFullPath() {
int lastSlashIndex = fullPath.lastIndexOf("/");
if (lastSlashIndex != -1) {
path = fullPath.substring(0, lastSlashIndex + 1);
fileName = fullPath.substring(lastSlashIndex + 1);
} else {
fileName = fullPath;
}
int lastDotIndex = fileName.lastIndexOf(".");
if (lastDotIndex != -1) {
extension = fileName.substring(lastDotIndex + 1);
fileName = fileName.substring(0, lastDotIndex);
} else {
extension = "";
}
}
public String getFullPath() {
return fullPath;
}
public String getPath() {
return path;
}
public String getFileName() {
return fileName;
}
public String getExtension() {
return extension;
}
}
```
使用示例:
```
FileNameParser parser = new FileNameParser("/Users/john/documents/report.doc");
System.out.println(parser.getFullPath()); // "/Users/john/documents/report.doc"
System.out.println(parser.getPath()); // "/Users/john/documents/"
System.out.println(parser.getFileName()); // "report"
System.out.println(parser.getExtension()); // "doc"
```