Bonjour à tous.
Voila, je suis en train d'écrire un programme pour traiter un fichier texte..
Les lignes du fichier sont sous cette forme :

aaaaaaaa:bbbbbbbbbbbbb:isherivherughemgrioehrmghioeshogrheriogh
..........

Le but pour moi est d'extraire le "aaaaa" et le "bbbbb" et de les écrire proprement dans un autre fichier sous la forme :

aaaaaaaa bbbbbbbbbbbbb
..........

Le reste de la ligne m'importe peu.
J'ai donc écrit le code ci-dessous, mais il me met "Probleme fichier texte"...
J'en conclus que le pointeur vers texte.txt = NULL ... mais je ne vois pas comment y remedier.
Merci d'avance.




Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <stdlib.h>
#include <stdio.h>
 
 
FILE* fopen(const char* nomDuFichier, const char* modeOuverture);
int fclose(FILE* pointeurSurFichier);
int fgetc(FILE* pointeurDeFichier);
int fseek(FILE* pointeurSurFichier, long deplacement, int origine);
 
 
int main()
{
FILE* fichier = NULL;
FILE* fichier2 = NULL;
int caractereActuel = 0;
 
fichier = fopen("mot.txt", "r");
fichier2 = fopen("texte.txt", "w");
 
if (fichier != NULL)
{
if (fichier2 != NULL)
	{
	do{
            caractereActuel = fgetc(fichier); // On lit le caractère
			if(caractereActuel >= 'a' && caractereActuel <= 'z')
				{
				fseek(fichier, -1, SEEK_CUR);
				while (caractereActuel != ':')
					{
					caractereActuel = fgetc(fichier);
					fprintf(fichier2, "%c", caractereActuel);
					}
				fseek(fichier, 1, SEEK_CUR);
				fprintf(fichier2, " ");
				while (caractereActuel != ':')
					{
					caractereActuel = fgetc(fichier);
					fprintf(fichier2, "%c", caractereActuel);
					}
				fprintf(fichier2, "\n");
				while (caractereActuel != '\n')
					{
					caractereActuel = fgetc(fichier);
					}
				fseek(fichier, 1, SEEK_CUR);
				} 
		} 
	while (caractereActuel != EOF); // On continue tant que fgetc n'a pas retourné EOF (fin de fichier)
	fclose(fichier);
	fclose(fichier2); 
	}
else 
{printf("Probleme fichier mot.\n");}
}
else {printf("Probleme fichier texte.\n");}
return 0;
}