Bloqué dans lire un fichier (C)

khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007 - 2 juil. 2003 à 13:42
khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007 - 2 juil. 2003 à 14:56
Bonjour tt le monde,
je vais poser une question que peut etre déja poser, mais malgré les liens que vous avez donner dans "Lire un fichier" j'arrive pas a faire ce que je veux.
déja j'ai commencer avec un fichier qui contient juste 15 12, mais le pb. que je reçois x=49 y=53, d'aprés un autre forum c'est normal car 1=49 et 5=53 mais moi je veux les valeurs en binaire pas en ascci. de plus le pire que mon fichier contient des choses avant mes deux colones:

test
moi
toi
dim
2
1 15
3 17

donc ce que je veux c'est d'aller directement a la ligne 5 pour associer a dim=2 et apes je donne a x la premiere colone et a y la 2eme colone.
je suis vraiment bloqué. si qlq un peut m aider svp.
merci infiniment.

voila mon code:

pf = fopen("test.dat","r");

if(pf == NULL)
{
printf("Error: can't open file.\n");
return 0;
}
else
{
fread(&c,sizeof(int),2,pf);
fclose(pf);
}

x = c[0];
y = c[1];

font=Times New Roman]Ensemble pour la scienceNew Roman

2 réponses

cs_Chouchou182 Messages postés 252 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 25 avril 2011 1
2 juil. 2003 à 14:30
Salut

Essaye fscanf(fp, "%d %d", &c[0], &c[1]) ;

Ça marche comme scanf en précisant le flux d'entrée en premier argument

J'espère ne pas m'être trompé

A plus
0
khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007
2 juil. 2003 à 14:56
Salut,
Merci.
la j'ai changé mon code, mais ca bien marcher pour les entiers mais pas pour les flottans. a par ça, est ce qu'il y a un moyen de lui dire qu'il passe les lignes jusqu'au il trouve le mot POINTS et apres il donne cette valeur a "dimension" et apres j'utlise ce que j'ai fait pour associe les valeurs aux tableaux X et Y.
-------------------
voila mon fichier:
-------------------

LOI 1-D V. 1.0

$TITRES
TTR capacitive 60Hz 400kV
TEMPS / [ms]
RTT NOISNET

$ECHELLES
0
0

$BORNES
0. 50.0
-250. 250.

$GRILLE
0

$INTERPOLATION
0

$VAR
5
VAR 1
0.
VAR 2
0.
VAR 3
0.
VAR 4
0.
VAR 5
0.

$POINTS
5
0 72
0.25 74.2733826
0.75 76.9337667
1.25 79.5978392
1.75 82.2652811

-------------
mon code :
-------------

FILE *pf;
double x = 0;
double y = 0;
double number[30];
int i = 0;

pf = fopen("test.dat","r");

if(pf == NULL)
{
printf("Error: can't open file.\n");
return 0;
}
else
{
i = 0;
while(!feof(pf)) {
fscanf(pf, "%d" , &number[i]);
i++;
}
x = number[0];
y = number[1];
fclose(pf);
}
0
Rejoignez-nous