La cosa es que yo quiero que me copie solo una palabra, localizada en un punto. ¿Como puedo hacerlo? Llevo días probando y nada. Soy un poco novatillo en esto, y agradecería mucho algo de ayuda.
Mi archivo .txt es algo así
[1]
10442021
8483689
[2]
be7 Cosmico 8.39e-002 1.22e-002 2.09e-002 10
bi212 SerieTh232Rn220 1.32e+002 2.54e-001 4.16e-001 14
[3]
be7 10 464.4 467.4 477.6 7.6 461 525 26.5 12352.0 Cosmico
bi212 14 732.2 735.2 730.4 9.6 696 769 25.3 887251.3 SerieTh232Rn220
[4]
1 119.9 122.9 122.9 2.2 114 133 8.9 90248.9
2 147.7 150.7 150.5 2.9 136 158 8.4 121760.3
3 176.3 179.3 179.0 3.1 161 185 8.6 202054.9
8 305.3 308.3 307.0 5.4 282 327 10.6 218150.5
9 404.4 407.4 418.6 15.5 375 459 38.5 308035.7
16 875.6 878.6 875.1 8.9 842 893 19.7 35045.8
[5]
Y yo quiero que me saque de esta linia "bi212 SerieTh232Rn220 1.32e+002 2.54e-001 4.16e-001 14" el primer número, es decir que en el fichero de salida aparezca "1.32e+002"
Gracias de antemano!
Código
#include <stdio.h> #include <stdlib.h> /*copy_file recibe como parametro el nombre del fichero origen y el nombre del fichero destino donde se copiara, devuelve 1 si se copio exitosamente,0 en caso contario*/ int copy_file(char* f_org,char* f_dest); int main() { if(!copy_file("fichero1.txt","fichero2.txt")) printf("El fichero no se pudo copiar\n"); else printf("Fichero copiado exitosamente\n"); return 0; } int copy_file(char* f_org,char* f_dest) { FILE *fp_org,*fp_dest; char c; if(!(fp_org=fopen(f_org,"rt")) || !(fp_dest=fopen(f_dest,"wt"))) { perror("Error de apertura de ficheros"); exit(EXIT_FAILURE); } while((c=fgetc(fp_org))!=EOF && !ferror(fp_org) && !ferror(fp_dest)) fputc(c,fp_dest); if(ferror(fp_org) || ferror(fp_org)) return 1; fclose(fp_org); fclose(fp_dest); return 0; }