使用相对路径时的问题,以便建立到另一个文件的链接

时间:2014-10-28 14:08:35

标签: java itext

我一直在尝试编写一个程序,它将使用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包含完整路径。但我只需要使用文件的相对路径。

有人可以建议我需要在代码中做出哪些更改吗?

2 个答案:

答案 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