У меня есть система, в которой я получил французский текст от третьей стороны, но мне трудно сделать его читабельным.
String frenchReceipt = "RETIR�E"; // The original Text should be "RETIRÉE"
Я перепробовал все возможные комбинации для преобразования строки с использованием кодировки UTF-8 и ISO-8859-1.
String frenchReceipt = "RETIR�E"; // The original Text should be "RETIRÉE"
byte[] b1 = new String(frenchReceipt.getBytes()).getBytes("UTF-8");
System.out.println(new String(b1)); // RETIR�E
byte[] b2 = new String(frenchReceipt.getBytes()).getBytes("ISO-8859-1");
System.out.println(new String(b2)); // RETIR�E
byte[] b3 = new String(frenchReceipt.getBytes(), "UTF-8").getBytes();
System.out.println(new String(b3)); // RETIR?E
byte[] b4 = new String(frenchReceipt.getBytes(), "UTF-8").getBytes();
System.out.println(new String(b4)); //RETIR?E
byte[] b5 = new String(frenchReceipt.getBytes(), "ISO-8859-1").getBytes("UTF-8");
System.out.println(new String(b5)); //RETIR�E
byte[] b6 = new String(frenchReceipt.getBytes(), "UTF-8").getBytes("ISO-8859-1");
System.out.println(new String(b6)); //RETIR?E
byte[] b7 = new String(frenchReceipt.getBytes(), "UTF-8").getBytes("UTF-8");
System.out.println(new String(b7)); //RETIR�E
byte[] b8 = new String(frenchReceipt.getBytes(), "ISO-8859-1").getBytes("ISO-8859-1");
System.out.println(new String(b8)); //RETIR�E
Как видите, проблему не решить.
Пожалуйста, порекомендуйте.
Обновление. Сторонний партнер подтвердил, что данные, отправленные в мое приложение, были в кодировке ISO-8859-1.