使用iText我想创建一个包含来自文件DB的值的表的pdf文档。下一步,在将值放入表格之前,我想找到与预定义关键字相匹配的值,并使用 替换的TextField 即可。因此,文本字段应位于适当的单元格中,即如果关键字位于第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)
如何调整上面的结构代码以便根据关键字执行替换方法?