如图,java中同样是utf-8存储的字符串,为什么这两种方式输出的字节会不同?
PHP中文网
PHP中文网 2017-04-18 10:48:35
0
2
553

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(2)
大家讲道理

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 ! ! !

迷茫

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()

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal