Maison  >  Article  >  Java  >  Convertir une chaîne en tableau d'octets à l'aide de la méthode getBytes(Charset) en Java

Convertir une chaîne en tableau d'octets à l'aide de la méthode getBytes(Charset) en Java

PHPz
PHPzavant
2023-09-16 18:49:02721parcourir

Convertir une chaîne en tableau doctets à laide de la méthode getBytes(Charset) en Java

La programmation Java implique la conversion de chaînes en tableaux d'octets, une technique pratique utilisée à de nombreuses fins, notamment la communication réseau ou le cryptage de données. Pour y parvenir, la classe String fournit une série de méthodes pour de telles conversions, dont la méthode getBytes(). Il convient de noter que le choix du codage approprié est crucial, car chaque codage utilise des règles différentes lors du mappage des caractères aux valeurs d'octets.

Dans cet article, nous allons approfondir deux techniques permettant de convertir une chaîne en un tableau d'octets à l'aide de la méthode getBytes() de Java. De plus, nous fournirons une explication détaillée des algorithmes utilisés par chaque méthode.

Méthode à utiliser

  • Méthode 1 - Dans cette méthode, nous allons créer une chaîne puis la convertir en un tableau d'octets à l'aide de la méthode getBytes(). Nous utiliserons le codage UTF-8 dans cet exemple.

  • Méthode 2 - Dans cette méthode, nous allons créer un tableau d'octets en spécifiant manuellement les valeurs d'octets. Nous allons ensuite créer une String à partir du tableau d'octets en utilisant le constructeur String.

Grammaire

La méthode getBytes() est membre de la classe String en Java. Il prend un argument, qui est le jeu de caractères utilisé pour coder la chaîne dans un tableau d'octets. La syntaxe de la méthode getBytes() est la suivante -

public byte[] getBytes(Charset charset)

Algorithme

La méthode de conversion d'une chaîne en tableau d'octets à l'aide de la fonction getBytes() en Java peut être simplifiée en quelques étapes -

  • Étape 1 - Instanciez un objet Charset correspondant à l'encodage souhaité à l'aide de la méthode forName() dans la classe Charset. Cette étape nécessite de fournir le nom de codage en tant que paramètre de chaîne.

  • Étape 2 - Appelez la méthode getBytes() de la classe String en fournissant l'objet Charset précédemment créé en paramètre. Cet appel génère un tableau d'octets représentant les caractères de la chaîne en utilisant le codage spécifié.

  • Étape 3 - Manipulez le tableau d'octets résultant selon les besoins. Java propose diverses techniques pour gérer les tableaux d'octets via son langage de programmation.

L'utilisation de la fonction getBytes() est un moyen efficace de convertir une chaîne en un tableau d'octets Java. Il vous permet de spécifier l'encodage à utiliser lors de la conversion. Ceci est crucial car différents codages ont des directives différentes pour mapper les caractères aux valeurs d'octets. Si vous utilisez un mauvais codage, une corruption des données peut se produire. En suivant l'algorithme ci-dessus, ils peuvent garantir que leur chaîne est convertie avec succès et en toute sécurité en un tableau d'octets.

Méthode 1

Dans cette méthode, nous créons d'abord une chaîne que nous souhaitons convertir en tableau d'octets. Ensuite, nous convertissons la String en un tableau d'octets en utilisant la méthode getBytes() de la classe String. Nous définissons l'encodage à appliquer à la conversion, en l'occurrence UTF-8. Pour garantir que le tableau d'octets est généré avec précision, nous l'imprimons.

Vous trouverez ci-dessous le même code de programme.

Exemple

import java.nio.charset.Charset;

public class StringToByteArrayExample1 {
   public static void main(String[] args) {
      // Create a String
      String str = "Hello, world!";
        
      // Convert the String to a byte array using the UTF-8 encoding
      Charset utf8 = Charset.forName("UTF-8");
      byte[] byteArray = str.getBytes(utf8);
       
      // Print the byte array
      for (byte b : byteArray) {
         System.out.print(b + " ");
      }
   }
}

Sortie

72 101 108 108 111 44 32 119 111 114 108 100 33

Méthode 2

Cette méthode consiste à saisir manuellement des valeurs d'octets pour construire un tableau d'octets. Utilisez ensuite le constructeur String pour convertir le tableau d’octets en chaîne.

Vous trouverez ci-dessous le même code de programme.

Exemple

import java.nio.charset.Charset;

public class StringToByteArrayExample2 {
   public static void main(String[] args) {
      // Create a byte array
      byte[] byteArray = {72, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100, 33};
        
      // Convert the byte array to a String using the UTF-8 encoding
      Charset utf8 = Charset.forName("UTF-8");
      String str = new String(byteArray, utf8);
        
      // Print the String
      System.out.println(str);
   }
}

Sortie

Hello, world!

Conclusion

Cet article présente la fonction containKey(), qui est utilisée pour déterminer si une clé est contenue dans la carte de hachage. Cette méthode accepte une clé en entrée et renvoie true si la clé est trouvée dans le hashmap, sinon elle renvoie false.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer