我生成了一个pdf,但是当保存它时,更新相同的pdf而不是新的pdf

问题描述 投票:0回答:1

我想创建一个新文档。每次当前行为更新旧文档而不是创建新文档。

这是我的代码:

public void createPDF() throws FileNotFoundException, DocumentException {
    //create a new document file
    Document doc = new Document(PageSize.A4,36,36,40,40);
    try {

        Log.e("PDFCreator", "PDF Path: " + path);
        SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyy");
        file = new File(dir, "Trinity PDF" + sdf.format(Calendar.getInstance().getTime()) + ".pdf");
        FileOutputStream fOut = new FileOutputStream(file);
        PdfWriter writer = PdfWriter.getInstance(doc, fOut);
        writer.setPageEvent(new Watermark());
        //opening the document using doc
        doc.open();
    }
}
java android itext
1个回答
2
投票

这可能是因为您每次使用相同的FILE名称。

SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyy")

这将为你提供一天的相同字符串。所以你每次只需要获得一个独特的名字。如果要在文件名中显示日期,则可以使用,然后可以使用此格式。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");

这将给出一个非常大的名称您可以根据需要制作它。主要的是它每次都应该是独一无二的。

除此之外,您还可以使用java.util.UUID或简单地使用System.currentTimeMillis()

© www.soinside.com 2019 - 2024. All rights reserved.