Itext5 程序在 Windows 上执行时遇到字符集问题?

Itext5 program get troubles with charset when executed on Windows?

我正在开发一个应用程序来修改 java 上的一些 PDF。该应用程序已完成,它可以在我的计算机上运行(使用 Linux),但现在,我试图在朋友的计算机(使用 Windows)上执行它,但它无法正常运行。好像是char-set的问题,因为像é á ó ú这样的字符没有出现,但是我不知道怎么解决,因为我找不到是否是windows-configuration问题或者这是我程序的问题 java...

我的代码是这样的:

     Charset charset = StandardCharsets.UTF_8;
         PdfReader reader = new PdfReader("template.pdf");

      PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("resultados"+direccionamiento+"result"+paciente+".pdf"));

       AcroFields wrt = stamper.getAcroFields();

 if(larga == true){
        File file2 = new File("informes"+direccionamiento+rs+"-"+value+".txt") ; 
        if(file2.exists()){

            try (FileInputStream fis2 = new FileInputStream(file2)) {
                String ll = "" ; 

            BufferedReader br = new BufferedReader(new InputStreamReader(fis2));    

            ll = br.readLine() ; 

         wrt.setField("#KEY_"+keylarga, ll) ;

            }

(不止于此,但我认为你可以播下 itext 的部分)

我想这可能是 windows 计算机的默认字符集,但我尝试将其设置为 UTF_8 并且似乎是这样设置的...

您必须在 InputStreamReader 中设置字符集,否则它将使用默认字符集。