сталипри использовании jdk1.8.0 - PullRequest
1 голос
/ 08 ноября 2019

В jdk1.6.0 "cp850" может отображаться в объявлении xml

<?xml version="1.0" encoding="cp850" standalone="no"?>

, однако, когда я использую jdk1.8.0, тип кодировки становится "850", без "cp"

<?xml version="1.0" encoding="850" standalone="no"?>

Как сделать так, чтобы кодировка стала "cp850" при использовании jdk1.8.0?

Я попытался жестко закодировать объявление xml. Хотя кодировка становится "cp850", похоже, это не верный путь.

transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");  
writer.write("<?xml version=\"1.0\" encoding=\""+encoding+"\" standalone=\"no\"?>"); 

Я также сравнил две библиотеки версий Java и обнаружил, что у них обоих есть rt.jar. В Java SE 8 у https://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html Cp850 есть новый псевдоним или псевдонимы с именем «850», это связано?

Оригинальный код

 String encoding = "cp850";
 transformer.setOutputProperty(OutputKeys.ENCODING, encoding);

Заранее спасибо, Neko

...