Imprimer arabe string en java
J'essaie d'afficher le texte arabe en java, mais il montre les caractères indésirables(Exemple : ¤[ïß[î) ou, parfois, seulement des points d'interrogation quand j'ai l'impression. Comment puis-je faire pour imprimer en arabe. J'ai entendu dire que ses quelque chose lié à l'unicode et UTF-8. C'est la première fois que je travaille avec les langues, donc aucune idée. J'utilise Eclipse Indigo IDE.
EDIT:
Si j'utilise l'encodage UTF-8 puis "¤[ïß["" les personnages sont de plus en "????????" des personnages.
Voulez-vous imprimer dans l'application de bureau ou une application web ?
où puis zou imprimer votre uotput? Dans eclipse console? attention, les standard les lignes de commande ne permet pas de support de l'unicode.
L'Éclipse de la console est juste la capture de la sortie d'un processus qui est Unicode, Hurda.
Ses une webapp
Vous êtes de droite. Les solutions de rechange afin que je puisse l'imprimer sur console ou juste pour s'assurer que le résultat que j'obtiens est le droit!
où puis zou imprimer votre uotput? Dans eclipse console? attention, les standard les lignes de commande ne permet pas de support de l'unicode.
L'Éclipse de la console est juste la capture de la sortie d'un processus qui est Unicode, Hurda.
Ses une webapp
Vous êtes de droite. Les solutions de rechange afin que je puisse l'imprimer sur console ou juste pour s'assurer que le résultat que j'obtiens est le droit!
OriginalL'auteur Chandra Eskay | 2012-05-21
Vous devez vous connecter pour publier un commentaire.
Pour commencer, vous pouvez prendre un coup d'oeil ici. Cela devrait vous permettre de faire de l'Éclipse impression d'unicode dans sa console (dont je ne sais pas si c'est quelque chose qui Éclipse prend en charge hors de la boîte, sans modifications supplémentaires)
Si cela ne résout pas votre problème, vous avez probablement un problème avec l'encodage de votre programme, de sorte que vous pouvez créer des chaînes d'une certaine manière similaire à ceci:
String str = new String("تعطي يونيكود رقما فريدا لكل حرف".getBytes(), "UTF-8");
Ce qui fonctionne pour moi.
Avez-vous essayer les deux? Aussi, pour exactement ce que vous essayez d'imprimer? La méthode ci-dessus a travaillé pour moi dans la console et
JFrame
..getBytes()
utilise la plate-forme de codage par défaut, qui est essentiellement une valeur aléatoire. La conversion de la chaîne d'octets, et puis de nouveau est entièrement redondant si les codages de match, et corrompt la chaîne si ils ne le font pas.OriginalL'auteur npinti
Si vous incorporez le texte de la lettre dans le code assurez-vous de définir l'encodage de votre projet correctement.
Dans ce cas, vous devez utiliser l'encodage correct de lire à partir du webservice de réponse.
OriginalL'auteur Joey
C'est pour Java SE, Java EE, Java ou MOI?
Si c'est pour Java ME, vous devez faire de la coutume GlyphUtils si vous utilisez LWUIT.
Télécharger ce fichier:
http://dl.dropbox.com/u/55295133/U0600.pdf
Regardez la liste de codage unicode..
Et regardez ce fil:
https://stackoverflow.com/a/9172732/1061371
dans la réponse (post) de Mohamed Nazar qui édité par bernama Alex Kliuchnikau,
"Le code ci-dessous peut être utilisé pour l'affichage de texte en arabe dans J2ME
String s=new String("\u0628\u06A9".getBytes(), "UTF-8");
où\u0628\u06A9
est l'unicode de deux lettres arabes"Regardez U0600.fichier pdf, afin que nous puissions voir que Mohamed Nazar et Alex Kliuchnikau donner l'exemple de créer des "ba" et "kaf", un personnage en arabe.
Puis le dernier point que vous devez prendre en compte est: "assurez-vous que votre INTERFACE utilisateur prise en charge d'unicode(je veux dire en arabe)."
Comme LWUIT pas encore de support de l'unicode (je veux dire en arabe).
Vous devriez faire de votre code personnalisé si vous voulez dire à votre application à l'aide de LWUIT.
OriginalL'auteur chameleon