Wenn Java-Programme zum Lesen und Schreiben von TXT-Dateien mit Chinesisch verwendet werden, erscheint der gelesene oder geschriebene Inhalt oft verstümmelt. Dies liegt daran, dass die Systemcodierung und die Programmcodierung unterschiedliche Codierungsformate verwenden.
Lösung:
Verwenden Sie java.io.FileInputStream/java.io.InputStreamReader und java.io.FileOutputStream/java.io.OutputStreamWriter, um dieses Problem zu lösen.
Implementierungscode:
//默认情况下,win系统编码是gbk/gbk2312,读取和写入时加入编码字符集可以解决乱码 public class ReadAndWrite { private static void test(){ File firstFile = new File("D://fileone.txt"); File secondFile=new File("D://filesecond.txt"); BufferedReader in = null; BufferedWriter out = null; try { //加入编码字符集 in = new BufferedReader(new InputStreamReader(new FileInputStream(firstFile), "gbk")); //加入编码字符集 out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(secondFile), "gbk")); String line = ""; while((line = in.readLine())!=null){ System.out.println(line); out.write(line+"\r\n"); } } catch (FileNotFoundException e) { System.out.println("file is not fond"); } catch (IOException e) { System.out.println("Read or write Exceptioned"); }finally{ if(null!=in){ try { in.close(); } catch (IOException e) { e.printStackTrace(); }} if(null!=out){ try { out.close(); } catch (IOException e) { e.printStackTrace(); } } } }
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonWas tun, wenn Java-Dateien mit verstümmelten Zeichen geschrieben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!