valeur)//Lire les données{cout"/> valeur)//Lire les données{cout">

Maison  >  Article  >  Tutoriel logiciel  >  Je voudrais demander conseil à tout le monde : Comment utiliser le langage C pour convertir des fichiers texte ?

Je voudrais demander conseil à tout le monde : Comment utiliser le langage C pour convertir des fichiers texte ?

王林
王林avant
2024-01-24 16:18:10381parcourir

Je voudrais demander conseil à tout le monde : Comment utiliser le langage C pour convertir des fichiers texte ?

Veuillez me dire : Comment convertir ce document txt en langage C

Cela peut être facilement résolu en utilisant STL. Cela a été commenté. Si vous n'êtes toujours pas sûr, apprenez STL.

.

#inclure

#inclure

#inclure

en utilisant l'espace de noms std;

void main()

{

ifstream in("F:\in.txt"); //Le fichier est dans le lecteur F et ouvert

int key; //correspond à des valeurs impaires

valeur double ; //correspond à un nombre pair

pair ar; //Déclarer les variables de paire clé-valeur

map maplist ; //Créer une liste de cartes

cout

while (in>>key>>value) //Lire les données

{

cout

ar=make_pair(key,value);//Créer une paire clé-valeur

maplist.insert(ar); //Insérer dans maplist, ce conteneur sera automatiquement trié par valeur clé

}

in.close();

ofstream out("F:\out.txt"); //Fichier de sortie

cout

for(map::const_iterator temp = maplist.begin(); temp != maplist.end(); temp++)

{

out

cout

}

out.close();

getchar();

}

Si vous utilisez le langage C pour résoudre le problème, vous pouvez créer une structure contenant deux valeurs, puis créer un tableau ou une liste chaînée de cette structure pour stocker les données lues, puis trier par la première valeur de la structure, et enfin sortir.

Problème de sortie du langage C vers un document texte

#inclure

Calculateur de vide()

{

int a,b,c,d;

char x,y;

FICHIER *fp1,*fp2;

fp1=fopen("expres.txt","r");

fp2=fopen("result.txt","w");

printf("Veuillez saisirn");

fscanf(fp1,"%d%c%d",&a,&x,&b);

fprintf(fp1,"%d%c%dn",a,x,b);

changer (x)

{

cas '+' :

c=a+b;

printf("%d%c%d=%dn",a,x,b,c);

fprintf(fp2,"%d%c%d=%dn",a,x,b,c);

pause;

cas '-' :

c=a-b;

printf("%d%c%d=%dn",a,x,b,c);

fprintf(fp2,"%d%c%d=%dn",a,x,b,c);

pause;

cas '*' :

c=a*b;

printf("%d%c%d=%dn",a,x,b,c);

fprintf(fp2,"%d%c%d=%dn",a,x,b,c);

pause;

cas '/':

c=a/b;

printf("%d%c%d=%dn",a,x,b,c);

fprintf(fp2,"%d%c%d=%dn",a,x,b,c);

pause;

par défaut :

printf("Erreur de saisie !n");

pause;

}

}

int main()

{

Calculatrice();

retour 0;

}

Le code complet est comme ceci, puis vous créez vous-même un nouveau fichier express.txt et y entrez l'expression, telle que 3+4

Ensuite, exécutez, et 3+4=7 sera affiché dans result.txt

Comment sortir des fichiers en langage C

1. La bibliothèque standard du langage C fournit une série de fonctions d'opération de fichiers. Les fonctions d'opération sur les fichiers sont généralement nommées sous la forme f+mot (f est l'abréviation de file), et leur déclaration se trouve dans le fichier d'en-tête stdio.h. Par exemple : les fonctions fopen et fclose sont utilisées pour ouvrir et fermer des fichiers ; les fonctions fscanf et fgets sont utilisées pour lire des fichiers ; les fonctions fprintf et fputs sont utilisées pour écrire des fichiers ; les fonctions ftell et fseek sont utilisées pour obtenir et définir les positions d'opération des fichiers. Les didacticiels généraux du langage C comportent un chapitre sur les opérations sur les fichiers. Vous pouvez trouver ce manuel pour une étude plus approfondie.

2.Routine :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

#inclure

inta;

charb,c[100];

intmain(){

FILE* fp1 = fopen("input.txt", "r"); //Ouvre le fichier d'entrée

FILE* fp2 = fopen("output.txt", "w"); //Ouvre le fichier de sortie

if(fp1==NULL || fp2==NULL) {//Quitter si l'ouverture du fichier échoue

puts("Impossible d'ouvrir le fichier !");

tour 0;

}

fscanf(fp1,"%d",&a);//Lire un entier à partir du fichier d'entrée

b=fgetc(fp1); //Lire un caractère du fichier d'entrée

fgets(c,100,fp1); //Lire une ligne de chaîne à partir du fichier d'entrée

printf("%ld",ftell(fp1)); //Affiche le nombre d'octets de décalage de la position actuelle du pointeur fp1 par rapport au début du fichier

fputs(c,fp2); //Écrit une ligne de chaîne dans le fichier de sortie

fputc(b,fp2); //Écrit un caractère dans le fichier de sortie

fprintf(fp2,"%d",a); //Écrit un entier dans le fichier de sortie

fclose(fp1); //Ferme le fichier d'entrée

fclose(fp2); //Ferme le fichier de sortie, équivalent à une sauvegarde

retour0;

}

Comment écrire les résultats de sortie du programme c dans un fichier txt

#inclure

#inclure

int IsLeapYear(int année)

{

si((année%4==0&année%100!=0)||(année%400==0))

retour 1;

autre

retour 0;

}

int mois_jour (int année,int mois)

{

int mon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};

if(IsLeapYear(year)&month==2)

retour le 29;

autre

retour(mon_day[mois-1]);

}

int DaySearch (année int, mois int, jour int)

{

int c=0;

flotteur s;

int m;

pour(m=1;mc=c+mois_jour(année,m);

c=c+jour;

s=année-1+(flotteur)(année-1)/4+(flotteur)(année-1)/100+(flotteur)(année-1)/400-40+c;

retour ((int)s%7);

}

int PrintAllYear(int année)

{

int temp;

int i,j;

FICHIER *fp;

if((fp=fopen("year.txt","wt"))==NULL)

{

printf("impossible d'ouvrir le fichier");

retour 1;

}

fprintf(fp,"nn%d an",année);

pour(i=1;i

{

temp=DaySearch(année,i,1);

si(i==1)

{

if(temp==0) fprintf(fp,"n le premier jour est %dn",7);

else fprintf(fp,"n le premier jour est %dn",temp);

}

fprintf(fp,"nn%d mois",i);

fprintf(fp," S M T W T F S n");

pour(j=1;j

{

if(j-temp

fprintf(fp," ");

autre

fprintf(fp,"%3d",j-temp);

si(j%7==0)

fprintf(fp,"n");

}

}

fclose(fp);

retour 0;

}

void main()

{

année intérieure ;

printf("nVeuillez saisir un an(XXXX)");

scanf("%d",&année);

PrintAllYear(année);

}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer