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> :

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));
Donc je lis mon 1er entier (=N) et ensuite j'ai N "chaine de caractère" à lire.
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.