Bonjour,
Les personnes qui connaissent aussi java pourront me répondre plus facilement...
Je dois écrire des fichiers binaire en java : des int et des string.
Puis, je dois lire ce fichier binaire mais dans un programme C++ (je ne connais pas très bien C++).
J'utilise pour cela la classe <ifstream> :
Donc je lis mon 1er entier (=N) et ensuite j'ai N "chaine de caractère" à lire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ifstream fPhonemeFile (sInitPhonemeLangageFileName,ios::in|ios::binary); if(!fPhonemeFile) { fprintf(stderr, "Can't open file : %s", sInitPhonemeLangageFileName); exit(EXIT_FAILURE); } fPhonemeFile.read((char*)&nNbLangagePhoneme,sizeof(int));
En java, pour lire une chaine de caractère, il n'y a pas de problème car il y a une méthode pour cela (ainsi que pour l'écrire: writeUTF et readUTF). D'après mes recherches, il me semble qu'en C++, je ne peux lire uniquement des "char".
Le problème, c'est que dans mon fichier binaire, il n'y a pas d'indication sur le nombre de caractères de chaque chaine. Alors comment puis-je les lire??
Si quelqu'un a déjà eu ce problème, merci...
alex.
Partager