Warum können beim Lesen und Schreiben des E/A-Streams verstümmelte Zeichen auftreten? ? Was ist der Grund?
1. Die Kodierungs- und Dekodierungsregeln sind inkonsistent
2. Diese Zeichenkodierung unterstützt eine bestimmte Sprache nicht (z. B. Chinesisch)
Dann Was sollen wir tun? Wie können verstümmelte Zeichen so weit wie möglich vermieden werden? ?
1. Kodierung: String ---> Kodieren Sie diesen String in eine Bytefolge mit dem Standardzeichensatz der Plattform
②: byte[] getBytes(Charset charset): Verwenden Sie die angegebene Zeichenkodierung, um den String zu kodieren
③: byte[] getBytes(String charsetName): Verwenden Sie die angegebene Zeichenkodierung, um die Zeichenfolge zu kodieren
2. Dekodierung: byte[] ---> Es gibt eine entsprechende Konstruktionsmethode in String:
①: String(byte[] bytes): Dekodieren Sie das angegebene Byte-Array unter Verwendung des Standardzeichensatzes der Plattform
②: String(byte[] bytes, Charset charset): Verwenden Sie das angegebene Zeichen set So dekodieren Sie das angegebene Byte-Array
③: String(byte[] bytes, String charsetName): Verwenden Sie den angegebenen Zeichensatz, um das angegebene Byte-Array zu dekodieren
Empfohlenes Lernen:
Java Video-TutorialDas obige ist der detaillierte Inhalt vonWas ist der Grund für verstümmeltes Lesen und Schreiben von E/A-Streams in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!