Ich möchte Zeichen (Chinesisch oder andere Sprache) aus Eigenschaftendatei auf Windows-Box anzeigen.java encode String zu UTF
Angenommen, ich lese eine Eigenschaft server.location = System 位置 von der Systemeigenschaft, die beim Starten des Servers festgelegt wird.
ich versuchte, diesen
new String(locationStr.getBytes(System.getProperty("file.encoding")), "UTF-8");
Dies funktioniert mit Linux zu tun, aber kann es nicht unter Windows arbeiten bekommen.
Es folgt snipet zusammengefasst, ohne Syntax, wie die Systemeigenschaft
gesetztURL fileURL = new URL("file:filePathAndName");
InputStream iStream = fileURL.openStream() ;
Properties prop = new Properties();
prop.load(iStream);
//Enumerate over prop and set System.setProperty (key, value);
in Reading als System.getProperty ("server.location")
Das zentral für alle Eigenschaftsdateien erfolgt Wenn Sie also etwas während des Lesens oder Festlegens einer bestimmten Codierung ändern, könnte dies andere beeinflussen. Daher ist dies nicht ratsam.
Auch versucht, mit URLEncoder.encode
zu kodieren, hat aber nicht geholfen. Ich sehe keinen spezifischen Kodierungssatz. Java verwendet UTF-16, unter Windows lautet die Kodierung "Cp1252". Was fehlt mir hier?
Irgendwelche Hilfe, um diese Arbeit zu machen oder etwas Licht zu werfen, wird geschätzt. Ich habe auch versucht, bestehende Fragen zu beantworten, aber die Antworten haben sich nicht direkt ergeben und haben somit neue Fragen aufgeworfen. Danke
Bearbeiten: Konnte den erhaltenen String nicht in UTF-8 konvertieren. Irgendwie überzeugt Menschen Objekte im Weg zu lesen Joop erwähnt und rufen Sie die Zeichenfolge richtig
Eine Eigenschaftendatei soll in ISO_8859_1 kodiert sein. Was enthält Ihre Datei? –
"UTF-8" in der Eigenschaftendatei klingt confussing? – Priyamal
Hallo JB, nicht sicher, was Sie meinen "Datei sollte in ISO-8859-1 codiert werden" Ich fand in Windows die Standardcodierung ist Cp1252. Die Eigenschaftendatei besteht aus zahlreichen Eigenschaften, eine pro Zeile. zB server.name = someName server.typ = someType server.location = someLocation usw. –
Nilesh