Maison  >  Article  >  Java  >  Quelle est la différence entre les caractères Java et les octets

Quelle est la différence entre les caractères Java et les octets

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-11-12 15:24:473381parcourir

Quelle est la différence entre les caractères Java et les octets

Octet signifie octet. C'est le type de données de base en Java. Il est utilisé pour déclarer des variables de type octet. Par conséquent, le type d'octet est la plage de valeurs. est de -128 à 127.

Habituellement, lors de la lecture de fichiers non texte (tels que des images, des sons, des fichiers exécutables), vous devez utiliser des tableaux d'octets pour enregistrer le contenu des fichiers. Lors du téléchargement de fichiers, les tableaux d'octets sont également utilisés comme tampon temporaire. réception. Par conséquent, l’octet est essentiel dans les opérations sur les fichiers. Il est utilisé que ce soit pour écrire ou lire des fichiers.

Dans certains programmes (notamment ceux liés au matériel), certaines données seront stockées dans des variables de type octet, telles que 00110010, où chaque bit représente un paramètre, puis effectueront des opérations d'acquisition et d'affectation de valeur sur paramètres à l’aide d’opérations sur bits.

La machine ne connaît que les octets, mais les caractères sont des unités sémantiques. Ils sont codés. Un caractère peut être codé sur 1, 2 ou même 3 4 octets. Ceci est lié au codage du jeu de caractères. Les lettres et les chiffres anglais sont codés sur un seul octet, mais les caractères des langues naturelles telles que les caractères chinois sont multi-octets. Un octet ne peut représenter que 255 caractères et il ne peut pas être utilisé pour traiter autant de langues naturelles dans le monde, un stockage multi-octets est donc absolument nécessaire.

Ainsi, dans l'entrée et la sortie des fichiers, InputStream et OutputStream traitent des flux d'octets, ce qui signifie que tout est supposé être des octets binaires tandis que Reader et Writer sont des flux de caractères, ce qui implique des problèmes de jeu de caractères ; ; selon la norme de codage ANSI, les signes de ponctuation, les chiffres et les lettres majuscules et minuscules occupent tous un octet et les caractères chinois occupent 2 octets. Selon la norme UNICODE, tous les caractères occupent 2 octets.

Octet :

1, bit=1, données binaires 0 ou 1.

2. octet = 8 bits, 1 octet équivaut à 8 bits L'unité de mesure de base pour l'espace de stockage.

3. Une lettre anglaise = 1 octet = 8 bits. 1 lettre anglaise équivaut à 1 octet, soit 8 bits.

4. Un caractère chinois = 2 octets = 16 bits. Un caractère chinois fait deux octets, soit 16 bits.

Caractère :

Java utilise l'Unicode pour représenter les caractères. Un caractère en Java fait 2 octets, et l'encodage Unicode d'un caractère chinois ou anglais prend 2 octets. mais le nombre d'octets occupés par un caractère varie selon les autres codages.

En codage GB 2312 ou GBK, le stockage d'un caractère alphabétique anglais nécessite 1 octet, et le stockage d'un caractère chinois nécessite 2 octets.

Dans l'encodage UTF-8, le stockage d'un caractère alphabétique anglais nécessite 1 octet, et le stockage d'un caractère chinois nécessite 3 à 4 octets.

En encodage UTF-16, le stockage d'un caractère alphabétique anglais nécessite 2 octets, et le stockage d'un caractère chinois nécessite 3 à 4 octets (certains caractères chinois de la zone d'extension Unicode nécessitent 4 caractères pour stocker Festival).

Dans l'encodage UTF-32, le stockage de n'importe quel caractère dans le monde nécessite 4 octets.

Site Web chinois php, un grand nombre de Tutoriels d'introduction à Java gratuits, bienvenue pour apprendre en ligne !

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