Lösung für verstümmelten Datenausgabestream: 1. Schreiben Sie einen String über „dos.write(“....getBytes());“ 2. Setzen Sie „new OutputStreamWriter(new FileOutputStream(file), „utf-8“); „Das ist es.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, Java Version 8.0, Dell G3-Computer.
Was soll ich tun, wenn der Datenausgabestream verstümmelt ist?
Das Problem der verstümmelten Zeichen von DataOutputStream lösen
Ich werde diese Grube zuerst meiden und die wichtigen Dinge dreimal sagen!
Verwenden Sie niemals die writeBytes-Methode von DataOutputStream.
Verwenden Sie niemals die writeBytes-Methode von DataOutputStream.
Verwenden Sie niemals die writeBytes-Methode von DataOutputStream Ich werde drei Methoden sehen ?
Klicken Sie rein, um die Implementierung zu sehenpublic final void writeBytes(String s) public final void writeChars(String s) public final void writeUTF(String str)
File file = new File("d:"+File.separator+"test.txt"); DataOutputStream dos = new DataOutputStream(new FileOutputStream(file)); dos.writeBytes("你好"); dos.writeChars("你好"); dos.writeUTF("你好"); dos.flush(); dos.close(); DataInputStream dis = new DataInputStream(new FileInputStream(file)); byte[] b = new byte[2]; dis.read(b); // `} System.out.println(new String(b, 0, 2)); char[] c = new char[2]; for (int i = 0; i < 2; i++) { c[i] = dis.readChar(); } //你好 System.out.println(new String(c, 0, 2)); //你好 System.out.println(dis.readUTF());
Das obige ist der detaillierte Inhalt vonWas tun, wenn der Datenausgabestream verstümmelt ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!