Я создаю pdf-парсер, используя Apache PDFBox , после анализа простого текста я запускаю несколько алгоритмов и в конце выводу json-файл.Для некоторых pdf-файлов выходной файл содержит кодировку utf-8, для других pdf-файлов он содержит некоторую форму кодировки latin-1 (пробелы отображаются как "\ xa0" при открытии json-файла в python).Я предполагаю, что это должно быть следствием шрифтов или какой-либо другой характеристики PDF?
Мой код для чтения обычного текста выглядит следующим образом
PDDocument document = PDDocument.load(file);
//Instantiate PDFTextStripper class
PDFTextStripper pdfStripper = new PDFTextStripper();
//Retrieving text from PDF document
String text = pdfStripper.getText(document);
//Closing the document
document.close();
Я пытался просто сохранитьобычный текст:
PrintWriter out = new PrintWriter(outPath + ".txt");
out.print(text);
Даже если открыть этот простой текстовый файл в python, вместо пробела выдаются символы "\ xa0", если файл читается в словарь , что дает следующие результаты:
dict_keys (['1. \ xa0 \ lorem \ xa0ipsum', '2. \ xa0 \ lorem \ xa0ipsum \ xa0 \ lorem \ xa0ipsum', '3. \ xa0 \ lorem', '4. \ xa0 \ lorem \ xa0ipsum ',' 5. \ xa0 \ lorem \ xa0ipsum '])
Я бы хотел убедиться, что текст всегда кодируется как utf-8.Как мне это сделать?