bon, je repete ma question
j'ai toujours pas reussi a creer ce que je voulais, alors j'ai decidé de creer un editeur en C et de stocker les map dans des fichiers a part. Or si je sais creer un ficher texte et le remplir avec des strings, je ne sais pas du tout comment creer un fichier "autre" et le remplir avec une matrice, et encore moins comment recuperer ces matrices
aidez moi !
bon:
tu fais fopen(le_nom_de_ton_fichier_sans_l_extension, "wb+");
Tu met tes données, pui tu fait:
fputc(0, fp);
fwrite("xxxx", 4, 1, fp) <- "xxxx" est l'extention de ton fichier, max 4 lettres
fputc(0, fp);
fputc(GEN_DATA_TAG, fp)
fclose(fp);
Bon, voilà le plus simple, avec des fopen, fread et tout et tout.
De mémoire ca doit etre ca, mais je suis pas sur à 100%.
Pour le GEN_DATA_TAG, c'est la valeur qui dit au TIOS que c'est un fichier de données brutes, je ne me souviens plus de sa valeur, cherche un peu.
...
Ok:
short matrice[50][20] = {...};
fwrite(matrice, 50*20*sizeof(short), fp) //pour ecrire
fread(matrice, 50*20*sizeof(short), fp) //pour lire
Oui, ça devient tres compliqué!
Mais tout en faisant quasi la meme chose que fopen(), ça va plus vite !
Habitant de la petite et paisible bourgade du Havre
"Développeur" de
TI-Civilization.
alors, personne peux m'aider ?
Bon. Utilise fopen & compagnie, c'est plus facile pr commencer.
mais je veux bien l'utiliser, mais comment ?
si il faut que j'utilise fwrite, je te rappelle que celui que tu m'a donné n'a que 3 argument et pas 4, et je ne sais pas du tout quoi mettre. Sinon, j'ai essayé avec fputc, Mais ca ne marche pas vraiment, le fichier crée fait 9 bytes, comme si il etait vide...
Et si t'arrive pas tu fais comme moi, tu fais autant d'essais que nécessaire pour comprendre comment ca marche.
comment déclares-tu back1?
j'ai enfin reussi a mettre ma matrice dans un fichier a part, et a la lire surtout (c'est ca qu'allait pas...) Mais maintenant, j'aimerais mettre plusieurs matrice dans le meme fichier. Alors je met des fwrite d'affilé (pareil pour lire, avec fopen) mais la, ca marche pu !
Es ce que je doit utiliser fseek, ou quelque chose comme ca entre chaque fwrite a la lecture et/ou a l'ecriture ?
en fait, si ca marche, mais aleatoirement, reste plus qu'a savoir d'ou ca viens. J'ai 2 programmes: 1 qui fait la carte, et 1 qui la lit.
Si j'envois l'un puis l'autre sur VTI, je ne verrais rien, par contre, si je les relances l'un apres l'autre directement sur VTI, ca marche...
"it wil be overwritten"
pour ça je te conseil vivement d'utiliser les fonction sym_
j'ai essayé avec fopen(...,"a"), la ca marche plus du tout...