我想创建一个新文档。每次当前行为更新旧文档而不是创建新文档。
这是我的代码:
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();
}
}
这可能是因为您每次使用相同的FILE名称。
SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyy")
这将为你提供一天的相同字符串。所以你每次只需要获得一个独特的名字。如果要在文件名中显示日期,则可以使用,然后可以使用此格式。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
这将给出一个非常大的名称您可以根据需要制作它。主要的是它每次都应该是独一无二的。
除此之外,您还可以使用java.util.UUID或简单地使用System.currentTimeMillis()