Ich kratze ein paar Websites und einige von ihnen enthalten nicht-lateinische Zeichen und Sonderzeichen wie “
für Anführungszeichen statt "
und ’
für Apostrophe statt '
.Warum liest dieser BufferedReader nicht im angegebenen UTF-8-Format?
Hier ist die wirkliche Kurve Ball ...
ich den entsprechenden Text müssen die Konsole ausgedruckt. Alles codiert gut, wenn ich es in meiner IDE (Netbeans) ausführe. Aber wenn ich es auf meinem Computer ausgeführt wird “I Need Your Help”
ausgedruckt als: ΓÇ£I Need Your HelpΓÇ¥
...
Bevor jemand sagt, ich brauche meine JAVA_TOOL_OPTIONS
Umgebungsvariable zu setzen, mich zu -Dfile.encoding=UTF8
lassen sagen, dass ich bereits getan haben, und das ist immer noch ein Problem . Außerdem, sollte nicht meine Festlegung der Kodierung für den gepufferten Leser "UTF-8"
das sowieso überschreiben?
Hier einige Informationen:
- Ich bin das JDK 7 mit der Zielplattform als 1,7
- auf einem Windows-7-Maschine Ich bin dies auf Ich laufe mit für alle Maschinen laufen und das gleiche Problem (einige haben nicht das
JAVA_TOOL_OPTIONS
Set, aber das scheint keinen Unterschied zu machen). - ich denke, die Standard-Kodierung, die es Cp1252 ist ist mit ...
mein Code hier. Lassen Sie mich wissen, ob Sie weitere Informationen benötigen. Vielen Dank!
/**
* Using the given url, this method creates and returns the buffered reader for that url
*
* @param urlString
* @return
* @throws MalformedURLException
* @throws IOException
*/
public synchronized static BufferedReader getBufferedReader(String urlString) throws MalformedURLException, IOException {
URL url = new URL(urlString);
InputStream is = url.openStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
return br;
}
Ich habe ein Problem, wo ein Java-Programm direkt von Hosta Aufruf: java myprogram gearbeitet, aber als ich versuchte, sich aus der Ferne ssh me @ Hosta „java myprogram“ ausführen es hat nicht funktioniert. Es wurde eine utf8 Eingabedatei gelesen. Als ich -Dfile.encoding = utf8 hinzugefügt habe, hat es funktioniert! Thx für diesen Ausschnitt – Paul