pdfbox:java.lang.NumberFormatException:对于输入字符串:“1#1”
pdfbox : java.lang.NumberFormatException: For input string: "1#1"
我正在使用 apache pdfbox 2.0.21。
当我尝试执行下面的代码时,它抛出了数字格式异常之类的错误。
Exception in thread "main" java.lang.NumberFormatException: For input string: "1#1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at org.apache.pdfbox.multipdf.PDFMergerUtility.acroFormLegacyMode(PDFMergerUtility.java:1367)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeAcroForm(PDFMergerUtility.java:1176)
at org.apache.pdfbox.multipdf.PDFMergerUtility.appendDocument(PDFMergerUtility.java:575)
at org.apache.pdfbox.multipdf.PDFMergerUtility.legacyMergeDocuments(PDFMergerUtility.java:459)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:346)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:330)
代码:
try {
PDFMergerUtility merger = new PDFMergerUtility();
Path mergedTempFile = Files.createTempFile("merge_", ".pdf");
merger.setDestinationFileName(mergedTempFile.toString());
System.err.println(mergedTempFile.toFile());
String[] fileArray = {
"D://test//34026-15BN-011-34B.pdf",
"D://test//34026-15BN-011-34B comment.pdf"
};
List<File> files = new ArrayList<>();
for (String name : fileArray) {
files.add(new File(name));
}
for (File file : files) {
merger.addSource(file);
}
merger.mergeDocuments(null); //On this line it throws error
System.out.println("Merging Completed...");
} catch (IOException e) {
e.printStackTrace();
}
发布了另一个相关问题,但没有帮助。
PDFBOX : java.lang.NumberFormatException:
请帮我解决这个问题。
这是一个错误(因为“dummyFieldName”在合并时用作重复字段的前缀,并且预期数字作为后缀)在 PDFBOX-5257 and will be fixed in the 2.0.25 release, coming within the next 3 months. Until then, get a snapshot 中跟踪,其中包括错误修复。
或者,使用 setPartialName()
.
重命名字段,使其不包含“dummyFieldName”
我正在使用 apache pdfbox 2.0.21。
当我尝试执行下面的代码时,它抛出了数字格式异常之类的错误。
Exception in thread "main" java.lang.NumberFormatException: For input string: "1#1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at org.apache.pdfbox.multipdf.PDFMergerUtility.acroFormLegacyMode(PDFMergerUtility.java:1367)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeAcroForm(PDFMergerUtility.java:1176)
at org.apache.pdfbox.multipdf.PDFMergerUtility.appendDocument(PDFMergerUtility.java:575)
at org.apache.pdfbox.multipdf.PDFMergerUtility.legacyMergeDocuments(PDFMergerUtility.java:459)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:346)
at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:330)
代码:
try {
PDFMergerUtility merger = new PDFMergerUtility();
Path mergedTempFile = Files.createTempFile("merge_", ".pdf");
merger.setDestinationFileName(mergedTempFile.toString());
System.err.println(mergedTempFile.toFile());
String[] fileArray = {
"D://test//34026-15BN-011-34B.pdf",
"D://test//34026-15BN-011-34B comment.pdf"
};
List<File> files = new ArrayList<>();
for (String name : fileArray) {
files.add(new File(name));
}
for (File file : files) {
merger.addSource(file);
}
merger.mergeDocuments(null); //On this line it throws error
System.out.println("Merging Completed...");
} catch (IOException e) {
e.printStackTrace();
}
发布了另一个相关问题,但没有帮助。 PDFBOX : java.lang.NumberFormatException:
请帮我解决这个问题。
这是一个错误(因为“dummyFieldName”在合并时用作重复字段的前缀,并且预期数字作为后缀)在 PDFBOX-5257 and will be fixed in the 2.0.25 release, coming within the next 3 months. Until then, get a snapshot 中跟踪,其中包括错误修复。
或者,使用 setPartialName()
.