Maison  >  Article  >  Java  >  Comment compter les octets dans une chaîne Java : pourquoi l'encodage est-il important ?

Comment compter les octets dans une chaîne Java : pourquoi l'encodage est-il important ?

DDD
DDDoriginal
2024-10-26 20:55:30293parcourir

How to Count Bytes in a Java String: Why Encoding Matters?

Comptage des octets dans une chaîne en Java

Contrairement à de nombreux autres langages de programmation, Java traite les chaînes comme du texte Unicode. Cela signifie que le nombre d'octets dans une chaîne dépend de l'encodage utilisé pour représenter les caractères.

Pour déterminer le nombre d'octets dans une chaîne, convertissez-la en tableau d'octets à l'aide de la méthode getBytes(). Cette méthode prend un encodage comme argument, spécifiant comment les caractères doivent être représentés sous forme d'octets.

Par exemple, l'extrait de code suivant illustre comment calculer le nombre d'octets dans une chaîne en utilisant différents encodages :

<code class="java">String string = "Hello World";

// Convert the string to a byte array using UTF-8 encoding
byte[] utf8Bytes = string.getBytes("UTF-8");
System.out.println("UTF-8 Bytes: " + utf8Bytes.length);

// Convert the string to a byte array using UTF-16 encoding
byte[] utf16Bytes = string.getBytes("UTF-16");
System.out.println("UTF-16 Bytes: " + utf16Bytes.length);

// Convert the string to a byte array using UTF-32 encoding
byte[] utf32Bytes = string.getBytes("UTF-32");
System.out.println("UTF-32 Bytes: " + utf32Bytes.length);

// Convert the string to a byte array using ISO-8859-1 encoding
byte[] isoBytes = string.getBytes("ISO-8859-1");
System.out.println("ISO-8859-1 Bytes: " + isoBytes.length);

// Convert the string to a byte array using Windows-1252 encoding
byte[] winBytes = string.getBytes("CP1252");
System.out.println("Windows-1252 Bytes: " + winBytes.length);</code>

Comme vous pouvez le constater, le nombre d'octets dans une chaîne varie en fonction de l'encodage utilisé. Par conséquent, il est important d'utiliser le codage approprié lors de la représentation de la chaîne sous forme d'octets.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn