使用 iText 我想创建一个 pdf 文档,其中包含来自文件 DB 的值的表。下一步,在将值放入表之前,我想找到与预定义关键字匹配的值并将它们替换为TextFields。因此,文本字段应该在适当的单元格中,即如果关键字位于第 2 行和第 3 列,则此单元格应该是插入的文本字段。为此,我编写了以下方法:
try {
Scanner scan = new Scanner(new File("filedb.txt"));
scan.useDelimiter(",|" + System.getProperty("line.separator"));
int i = 0;
while(scan.hasNext()) {
String t1 = scan.next();
String t2 = scan.next();
String t3 = scan.next();
String t4 = scan.next();
// Puts all columns into the ArrayList
List<Object> allColumns = new ArrayList<Object>();
allColumns.add(t1);
allColumns.add(t2);
allColumns.add(t3);
// *UPDATED* checks for 'keywrd' in columns and replaces them with TXT_FLD
for (int n=0; n < allColumns.size(); n++) {
PdfPCell cell = new PdfPCell();
cell.setCellEvent(new TextFields(n));
if (allColumns.get(n).equals("keywrd")) {
allColumns.set(n, cell);
}
}
// Inserts all columns into the table cells
for (PdfPCell values : allColumns) {
table.addCell(values);
}
// creates TextFields at the last column of a given table
PdfPCell cell = new PdfPCell();
cell.setCellEvent(new TextFields(i));
table.addCell(cell);
i++;
}
scan.close();
} catch (Exception e) {
e.printStackTrace();
}
错误:
List 类型中的方法 add(PdfPCell) 不适用于参数 (Object)
如何适应上述结构代码以便根据关键字执行替换方法?