Java 从pdf中读取俄文文本并在excel文件中写入

Java 从pdf中读取俄文文本并在excel文件中写入,java,character-encoding,pdfbox,Java,Character Encoding,Pdfbox,我正在阅读用俄语编写的PDF文件,并使用PDFBox将其解析为csv,但csv文件包含问号而不是俄语文本 我在inputstream“Windows-1252”newInputStreamReader(fr,“Windows-1252”)中尝试了文本编码也设置System.setProperty(“控制台编码”、“UTF-8”)但notings有效 byte[] text = tc.getText().getBytes(StandardCharsets.UTF_8); Strin

我正在阅读用俄语编写的PDF文件,并使用PDFBox将其解析为csv,但csv文件包含问号而不是俄语文本

我在inputstream“Windows-1252”new
InputStreamReader(fr,“Windows-1252”)中尝试了文本编码也设置
System.setProperty(“控制台编码”、“UTF-8”)但notings有效

    byte[] text = tc.getText().getBytes(StandardCharsets.UTF_8);
    String encodedString = new String(text, StandardCharsets.UTF_8);
    System.out.println("result=" + encodedString );
我在控制台中收到的结果是PDF包含类似“Пааааааааааааа”的文本 结果=??????????
结果=

你能展示更多你的代码吗?有没有可能提供一份PDF样本?从
.getBytes(…
…,StandardCharsets.UTF_8)的部分可以删除。它将字符串转换为字节,然后再转换回来。因此,这是没有效果的。“Паааааааааааааааааааааа。由于隐私问题,我无法提供PDF。PDF包含表格数据,我正在尝试以CSV格式导出。我创建了一个示例代码,现在从文本文件中读取的文本包含相同的俄语文本,打印时返回问号。System.setProperty(“file.encoding”、“UTF-8”);尝试{FileInputStream fr=new FileInputStream(“E:/a.txt”);InputStreamReader ir=new InputStreamReader(fr,“UTF-8”);BufferedReader br=new BufferedReader(ir);System.out.println(“output=“+br.readLine());br.close();}捕获(异常E){E.printStackTrace()}现在我创建了一个带有文本文件的示例,其中包含“ППцаааааааааааааа<代码>尝试{FileInputStream fr=new FileInputStream(“E:/a.txt”);InputStreamReader ir=new InputStreamReader(fr,“UTF-8”);BufferedReader br=new BufferedReader(ir);System.out.println(“output=“+br.readLine());br.close();}捕获(异常E){E.printStackTrace();}
您能显示更多代码吗?有没有可能提供一份PDF样本?从
.getBytes(…
…,StandardCharsets.UTF_8)的部分可以删除。它将字符串转换为字节,然后再转换回来。因此,这是没有效果的。“Пааааааааааааааааааааааааааа。由于隐私问题,我无法提供PDF。PDF包含表格数据,我正在尝试以CSV格式导出。我创建了一个示例代码,现在从文本文件中读取的文本包含相同的俄语文本,打印时返回问号。System.setProperty(“file.encoding”、“UTF-8”);尝试{FileInputStream fr=new FileInputStream(“E:/a.txt”);InputStreamReader ir=new InputStreamReader(fr,“UTF-8”);BufferedReader br=new BufferedReader(ir);System.out.println(“output=“+br.readLine());br.close();}捕获(异常E){E.printStackTrace()}现在我创建了一个带有文本文件的示例,其中包含“ППцаааааааааааааа<代码>尝试{FileInputStream fr=new FileInputStream(“E:/a.txt”);InputStreamReader ir=new InputStreamReader(fr,“UTF-8”);BufferedReader br=new BufferedReader(ir);System.out.println(“output=“+br.readLine());br.close();}捕获(异常E){E.printStackTrace();}