我一直在尝试编写一个程序,它将使用iText制作带有链接的PDF文件,以下是该程序的代码片段:
private Chapter generatePDF(String text, String path) {
Phrase phrase = new Phrase(text);
Paragraph paragraph = new Paragraph();
paragraph.add(phrase);
Chapter chapter = new Chapter(paragraph, 1);
chapter.setNumberDepth(0);
Chunk trial = null;
String name = path.substring(path.lastIndexOf("\\") + 1, path.length());
for (int i = 1; i < 3; i++) {
trial = new Chunk(i + ". " + name);
trial.setAnchor(path);
Paragraph para = new Paragraph();
para.add(trial);
chapter.add(para);
}
return chapter;
}
上述方法中的text
包含文件名的值,path
包含完整路径。但我只需要使用文件的相对路径。
有人可以建议我需要在代码中做出哪些更改吗?
答案 0 :(得分:0)
如果您使用Java 7:
final String fileName = Paths.get(path).getFileName().toString();
答案 1 :(得分:0)
您可以查看java.nio.file.Path界面。
在那里你可以找到许多实用功能,例如Path#getFileName,你应该在这里使用什么。
示例:
final Path inputFile = Paths.get("D:\\temp\\inputFile.txt");
System.out.println(inputFile.getFileName());
输出:
inputFile.txt