solution de chaîne Java tronquée : (recommandé : tutoriel vidéo Java)
System.out.println(str); String str1 = new String(str.getBytes("ISO-8859-1"), "utf-8"); System.out.println(str1); String str2 = new String(str.getBytes("gb2312"), "utf-8"); System.out.println(str2); String str3 = new String(str.getBytes("gbk"), "utf-8"); System.out.println(str3);
str.getBytes(charsetName);charsetName est le caractère d'origine Encodage
"utf-8" consiste à convertir str en encodage utf-8.
new String(str.getBytes("gbk"),"iso8859-1")
Étape 1 : byte[] bytes=str.getBytes("gbk")
Dites à la machine virtuelle Java de convertir le chinois en un tableau d'octets dans la méthode "gbk". Un caractère chinois correspond à deux octets.
La deuxième étape correspondante est :
String s=new String(bytes, "iso8859-1"), à ce moment chaque octet est assemblé en un "?" À l'heure actuelle, s correspond à plusieurs "?". Nous pouvons considérer "?" comme un caractère chinois spécial, et les informations qu'il représente peuvent être restaurées sans perte. La méthode
java.lang.String.getBytes(String charsetName) encode cette chaîne dans une séquence d'octets en utilisant le jeu de caractères spécifié et stocke le résultat dans un nouveau tableau d'octets.
Déclaration
Ce qui suit est la déclaration de la méthode java.lang.String.getBytes()
public byte[] getBytes(String charsetName) throws UnsupportedEncodingException
Paramètres : charset -- Ceci est le nom d'un caractère pris en charge ensemble.
Valeur de retour : Cette méthode renvoie le tableau d'octets résultant.
nouvelle méthode String(byte[],decode)
Par rapport à getBytes, vous pouvez restaurer le caractère "中" via new String(byte[], decode),
Cette nouvelle String(byte[],decode) utilise en fait le décodage d'encodage spécifié pour analyser byte[] dans une chaîne.
Exception : UnsupportedEncodingException -- Si le jeu de caractères spécifié n'est pas pris en charge.
Pour plus de connaissances sur Java, veuillez faire attention à la colonne Tutoriel de base Java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!