Как добавить условные данные в ячейки таблицы itext - PullRequest
0 голосов
/ 02 сентября 2018

Я пытаюсь ввести данные, которые я проанализировал из файла JSON, в таблицу. Я использую Java на Eclipse с внешним jar-файлом itext (так как я пытаюсь вывести PDF). Данные для ввода являются условными.

                  table.addCell("Annual Leave*"); 
                  if(ltype=="annual"){
                  table.addCell(from1);
                  table.addCell(to1);
                  table.addCell(n);
                  }
                  else{
                     table.addCell("");
                      table.addCell("");
                      table.addCell("");
                  }

                  table.addCell("Sick Leave(certified)**");
                  if(ltype=="sick_leave_cert"){
                      table.addCell(from1);
                      table.addCell(to1);
                      table.addCell(n);
                  }

Это то, что я пытался сделать. Однако в моем конечном PDF-документе есть пустая таблица.

1 Ответ

0 голосов
/ 02 сентября 2018

Проблема на самом деле не связана с itext, она связана с обработкой строк Java: вы сравниваете строки следующим образом:

if(ltype=="annual")
...
if(ltype=="sick_leave_cert")

В Java тип String не является примитивным типом. Таким образом, сравнение строк с использованием == проверяет, разрешают ли обе стороны верх идентичного объекта String, а не представляют ли строки на обеих сторонах одинаковые символы в последовательности.

Чтобы проверить, представляют ли две строки одинаковые последовательности символов, используйте метод equals:

if("annual".equals(ltype))
...
if("sick_leave_cert".equals(ltype))
...