Maison >Java >Javacommencer >Résumé sur le problème des points d'interrogation et des caractères tronqués en Java

Résumé sur le problème des points d'interrogation et des caractères tronqués en Java

王林
王林original
2019-11-29 10:07:553802parcourir

Résumé sur le problème des points d'interrogation et des caractères tronqués en Java

Dans la programmation basée sur Java, nous rencontrons souvent des problèmes avec le traitement et l'affichage des caractères chinois, comme de nombreux caractères tronqués ou des points d'interrogation.

En effet, la méthode d'encodage par défaut en JAVA est UNICODE, et les fichiers et bases de données couramment utilisés par les Chinois sont basés sur des encodages tels que GB2312 ou BIG5, ce problème se produit donc. Vous trouverez ci-dessous un résumé de ces problèmes.

Partage gratuit de vidéos d'apprentissage : vidéo Java

1. Sortie du chinois dans la page Web

JAVA est utilisé en réseau. transmission L'encodage est "ISO-8859-1", il doit donc être converti lors de la sortie, comme :

String str="中文";
str=new String(str.getBytes("GB2312"),"8859_1");

Mais si l'encodage utilisé est "GB2312" lors de la compilation du programme, et que celui-ci est exécuté le programme de plate-forme chinoise, ce problème ne se produira pas, alors assurez-vous d'y prêter attention.

2. Lire le chinois à partir des paramètres

C'est exactement le contraire de la sortie sur la page Web, telle que :

str=new String(str.getBytes("8859_1"),"GB2312");

3 . Operate DB

Une méthode plus simple est la suivante : dans le "Panneau de configuration", définissez la "Région" sur "Anglais (États-Unis)". Si des caractères tronqués apparaissent toujours, vous pouvez également effectuer les réglages suivants :

Lors de l'obtention du chinois :

str=new String(str.getBytes("GB2312"));

Entrez le chinois dans la base de données :

str=new String(str.getBytes("ISO-8859-1"));

En jsp. Solution chinoise

Dans le "Panneau de configuration", définissez la "Région" sur "Anglais (États-Unis)".

Ajoutez dans la page JSP :

S'il ne s'affiche pas normalement, la conversion suivante doit être effectuée :

Par exemple :

name=new String(name.getBytes("ISO-8859-1"),"GBK");

Il n'y aura alors pas de problème chinois.

Pour plus d'articles et de didacticiels connexes, veuillez visiter : Tutoriel d'introduction à Java

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