Enregistrer les premiers caracteres d'un fichier dans des variab

Fermé
DARsKater Messages postés 747 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 août 2020 - 22 juil. 2014 à 19:25
 DARsKater - 23 juil. 2014 à 19:06
Bonjour,

Je cherche a enregistrer les 4 premiers caractères d'un fichier dans 4 variables char différentes, mais je ne sais pas comment faire, les seules fonctions que je peux utiliser sont exit, open, close, write, read, malloc et free.

Un grand merci d'avance pour votre aide, je ne cherche pas forcément une réponse toute faite mais qu'on me dise comment procéder m'aiderait énormément !



A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
22 juil. 2014 à 20:15
Bonjour,

Tout d'abord, c'est dommage de devoir utiliser open/close/write/read qui ne sont pas des fonctions portables...
Ne s'agirait-il pas plutôt de : fopen(), fclose() / fwrite(), fread() ?

Sinon, il n'y a rien de dur. Il suffit de lire le fichier avec (f)open(). Cela te permet de récupérer une référence que tu utiliseras pour lire le fichier avec (f)read(). Tu précises que tu souhaites récupérer un caractère que tu stockeras dans une variable.
Enfin, tu fermes le fichier avec (f)close().

Pour voir les prototypes, il suffit de taper "man nom_fonction" sur google. Par exemple, pour read() : http://pwet.fr/man/linux/appels_systemes/read/

Cdlt,
2
DARsKater Messages postés 747 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 août 2020 233
Modifié par DARsKater le 22/07/2014 à 21:20
Merci, et ce sont bien les versions que j'ai cité
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
22 juil. 2014 à 21:19
D'ac. N'hésite pas à poster ton code pour qu'on puisse te corriger ;-).
0
Bon bah je n'y arrive toujours pas... possible d'avoir un bout de code s'il vous plait?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
Modifié par fiddy le 23/07/2014 à 18:53
Un truc du style :
/*Il faut inclure les bons headers*/
int fd=open(nomFichier,O_RDONLY,0);
read(fd, &caractere1,1);
read(fd, &caractere2,1);
/*etc.*/
close(fd);

Tu peux même faire un tableau. Dans ce cas, en une passe, tu lis les 4 caractères.
Cdlt,
0
Merci
0
IntGrapher Messages postés 9 Date d'inscription lundi 21 juillet 2014 Statut Membre Dernière intervention 22 juillet 2014
22 juil. 2014 à 20:12
Comment tu fais pour ouvrir le fichier ?
0