Heim  >  Artikel  >  Java  >  Detaillierte Erläuterung des Codes zur Implementierung der IO-Stream-Dateikodierung

Detaillierte Erläuterung des Codes zur Implementierung der IO-Stream-Dateikodierung

Y2J
Y2JOriginal
2017-05-15 10:15:451634Durchsuche

Dieser Artikel stellt die Methode der Java-IO-Stream-Dateikodierung anhand von Beispielcode vor. Er ist sehr gut und hat Referenzwert.

•Kodierung von Dateien

package cn.test;
import java.io.UnsupportedEncodingException;
public class Demo15 {
  public static void main(String[] args) throws UnsupportedEncodingException {
    String str = "你好ABC123";
    byte[] b1 = str.getBytes();//转换成字节系列用的是项目默认的编码
    for (byte b : b1) {
      //把字节(转换成了int)以十六进制方式显示
      System.out.print(Integer.toHexString(b & 0xff) + " ");
    }
    System.out.println("");
    //utf8编码,中文占用3个字节,英文和数字占用1个字节
    byte[] b2 = str.getBytes("utf8");
    for (byte b : b2) {
      System.out.print(Integer.toHexString(b & 0xff) + " ");
    }
    System.out.println("");
    //gbk编码,中文占用两个字节,英文和数字占用1个字节
    byte[] b3 = str.getBytes("gbk");
    for (byte b : b3) {
      System.out.print(Integer.toHexString(b & 0xff) + " ");
    }
    System.out.println("");
    //java是双字节编码 utf-16be
    //utf-16be编码,中文占2个字节,英文和数字也占用2个字节
    byte[] b4 = str.getBytes("utf-16be");
    for (byte b : b4) {
      System.out.print(Integer.toHexString(b & 0xff) + " ");
    }
    System.out.println("");
    //当字节序列是某种编码时,这时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码
    String str1 = new String(b4);//使用项目默认的编码
    System.out.println(str1);
    String str2 = new String(b4, "utf-16be");
    System.out.println(str2);
  }
}

Ausführungsergebnis:

e4 bd a0 e5 a5 bd 41 42 43 31 32 33 
e4 bd a0 e5 a5 bd 41 42 43 31 32 33 
c4 e3 ba c3 41 42 43 31 32 33 
4f 60 59 7d 0 41 0 42 0 43 0 31 0 32 0 33 
O`Y}ABC123
你好ABC123

Datei ist eine Bytesequenz, bei der es sich um eine beliebige codierte Bytesequenz handeln kann.

Wenn wir eine Textdatei direkt auf einem chinesischen Computer erstellen, erkennt die Textdatei nur die Ansi-Kodierung (im chinesischen System stellt die Ansi-Kodierung die GBK-Kodierung dar)

[Verwandte Empfehlungen ]

1. Besondere Empfehlung: Version „php Programmer Toolbox“ V0.1 herunterladen

2 >Kostenloses Java-Video-Tutorial

3.

YMP-Online-Handbuch

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Codes zur Implementierung der IO-Stream-Dateikodierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn