Convertir très grand nombre en unicode -JAVA
Jehol
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous,
j'ai récupérer le code JAVA d'un algorithme qui analyse des chaines de caractères (unicode), et je souhaite l'utiliser pour analyser des chaines de nombres (pouvant être très grand: une chaine de nombre (séparés par des "-" pourrait par exemple être 120-45-7684-34-439743-45-7684 etc.
Ce que je ne sais pas faire, c'est convertir un nombre (pouvant être très grand) en caractère unicode.
Quelqu'un pourrait-il me donner un exemple pour par exemple le nombre 439743 (à ma connaissance il y a de l'espace dans unicode 5 pour plus d'1 million de caractère).
Merci d'avance.
simon
j'ai récupérer le code JAVA d'un algorithme qui analyse des chaines de caractères (unicode), et je souhaite l'utiliser pour analyser des chaines de nombres (pouvant être très grand: une chaine de nombre (séparés par des "-" pourrait par exemple être 120-45-7684-34-439743-45-7684 etc.
Ce que je ne sais pas faire, c'est convertir un nombre (pouvant être très grand) en caractère unicode.
Quelqu'un pourrait-il me donner un exemple pour par exemple le nombre 439743 (à ma connaissance il y a de l'espace dans unicode 5 pour plus d'1 million de caractère).
Merci d'avance.
simon
A voir également:
- Convertir très grand nombre en unicode -JAVA
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Eclipse java - Télécharger - Langages
- Photo insta en grand - Guide
2 réponses
Salut,
En UNICODE chaque caractere est représenté selon le format suivant: \uhhhh.
Toujours \u ( u impérativement minuscule).
hhhh est une valeur hexa décimale.
Dans ton cas, tu dois représenter des nombres selon le format UNICODE.
Un nombre est composé des caractères numériques 0 à 9.
En Unicode, le code de ces caractères 0 à 9 est \u0030 à \u0039.
Exemple:
La chaîne "1234567890" sera la suivante en Unicode:
"\u0031\u0032\u0033\u0034\u0035\u0036\u0037\u0038\u0039\u0030".
La chaîne (ton exemple) "439743" >>>>>>>> "\u0034\u0033\u0039\u0037\u0034\u0033".
Je suppose que tu veux convertir le nombre "439723".
On remarque qu'on a toujours /u003 donc qu'il faudra y ajouter (par compactage) successivement 4, 3, 9, 7, 4 et 3.
Une solution serait (il y en a d'autres) d'utiliser la méthode substring(int indiceDebut, int indiceFin)
pour extraire chaque caractère de la chaîne "439723" afin de l'ajouter d'abord à \u003, puis \u003car à
la chaîne devant contenir les caractères Unicode.
Exemple:
Cordialement,
Dan
En UNICODE chaque caractere est représenté selon le format suivant: \uhhhh.
Toujours \u ( u impérativement minuscule).
hhhh est une valeur hexa décimale.
Dans ton cas, tu dois représenter des nombres selon le format UNICODE.
Un nombre est composé des caractères numériques 0 à 9.
En Unicode, le code de ces caractères 0 à 9 est \u0030 à \u0039.
Exemple:
La chaîne "1234567890" sera la suivante en Unicode:
"\u0031\u0032\u0033\u0034\u0035\u0036\u0037\u0038\u0039\u0030".
La chaîne (ton exemple) "439743" >>>>>>>> "\u0034\u0033\u0039\u0037\u0034\u0033".
Je suppose que tu veux convertir le nombre "439723".
On remarque qu'on a toujours /u003 donc qu'il faudra y ajouter (par compactage) successivement 4, 3, 9, 7, 4 et 3.
Une solution serait (il y en a d'autres) d'utiliser la méthode substring(int indiceDebut, int indiceFin)
pour extraire chaque caractère de la chaîne "439723" afin de l'ajouter d'abord à \u003, puis \u003car à
la chaîne devant contenir les caractères Unicode.
Exemple:
String ma_chaineN = "439723"; String ma_chaineU = ""; String debUnicode = "\\u003"; // la partie commune String debU = ""; int longueur_chaineN = ma_chaineN.length(); int indiceDebut = 0; int indiceFin = 0; for(indiceDebut = 0; indiceDebut <longueur_chaineN; indiceDebut++) { debU = debUnicode; debU+= ma_chaineN.substring(indiceDebut, indiceDebut +1); ma_chaineU+= debU; System.out.println("ma_chaineU: " + ma_chaineU); } System.out.println("\n\nma_chaineU: " + ma_chaineU);
Cordialement,
Dan
ciao
Jehol