Maison  >  Questions et réponses  >  le corps du texte

如图,java中同样是utf-8存储的字符串,为什么这两种方式输出的字节会不同?

PHP中文网PHP中文网2741 Il y a quelques jours529

répondre à tous(2)je répondrai

  • 大家讲道理

    大家讲道理2017-04-18 10:50:35

    Assurez-vous d'abord que l'encodage est unifié, que l'encodage du fichier est UTF-8, utilisez UTF-8 pour lire le fichier et getBytes transmettez également UTF-8
    De plus, n'utilisez pas le Bloc-notes ! N'utilisez pas le Bloc-notes ! N'utilisez pas le Bloc-notes ! Dites les choses importantes trois fois ! ! !

    répondre
    0
  • 迷茫

    迷茫2017-04-18 10:50:35

    Dans la documentation Java8, il est dit que String.getBytes() est codé selon le jeu de caractères par défaut de la plateforme. Dans le cas de Windows, le jeu de caractères par défaut n'est pas utf-8, mais gbk. Linux dépend de la configuration (je ne sais pas exactement comment).

    Encode cette chaîne en une séquence d'octets en utilisant le jeu de caractères par défaut de la plate-forme, en stockant le résultat dans un nouveau tableau d'octets.

    Le comportement de cette méthode lorsque cette chaîne ne peut pas être codée dans le jeu de caractères par défaut n'est pas spécifié. La classe CharsetEncoder doit être utilisée lorsqu'un plus grand contrôle sur le processus d'encodage est requis.

    Portail : String.getBytes()

    répondre
    0
  • Annulerrépondre