Cool C/C++

Programacion en C/C++

Home Foros
Bienvenido, Invitado
Por favor Identificarse o Registrarse.    Contraseña olvidada?

Manejo de archivos en C
(1 viendo) (1) Invitado
AbajoPágina: 1
TEMA: Manejo de archivos en C
#126
Manejo de archivos en C Creado el día: 11/08/2011 15:24 Karma: 0
Hola a todos, espero que me puedan ayudar con esta duda. Es sobre manejo de archivos. Para la lectura de datos me resulta comodo y facil de usar el fscanf(), al menos hasta ahora me funcionaba bien tomando numeros de un archivo. El problema es al leer cadenas. Por ejemplo:

archivo:

pais1--ciudad1--direccion1
pais2--ciudad2--direccion2
pais3--ciudad3--direccion3
...

programa:

int dia, mes, año
FILE *archivo = fopen("archivo.txt","r");
while(!feof(archivo)){
fscanf(archivo, "%s--%s--%s\n", pais, ciudad , direccion);
...
}
fclose(archivo);

Lo que quiero es que fscanf() lea linea por linea el archivo y almacene los datos en las variables correspondientes respetando los separadores ("--") Hasta ahora lo que ha hecho el programa es tomar todo una linea ("pais1--ciudad1--direccion1") y pasarlo a la primer variable que encontraba, en este caso pais. Las otras variables las llenaba con cualquier cosa.

Habra alguna forma en que se puedan leer varias cadenas que comparten una sola linea por separado?
Rene
Navegador Iniciado
Mensajes: 1
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
#127
Re: Manejo de archivos en C Creado el día: 12/08/2011 08:04 Karma: 0
Puedes utilizar la funcion fgets

Te pongo un ejemplo:


#include <stdio.h>

int main()
{
FILE * pFile;
char mystring [100];

pFile = fopen ("myfile.txt" , "r");
if (pFile == NULL)
puts("Error opening file");
else {
fgets (mystring , 100 , pFile); /* Obtiene una linea del archivo */
puts (mystring);
fclose (pFile);
}
return 0;
}
ajo
Navegador Iniciado
Mensajes: 8
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
#128
Re: Manejo de archivos en C Creado el día: 14/08/2011 08:26 Karma: 0
Hola. Podrías indicar cómo están almacenados los registros en el archivo, es decir especificar más detalles de la forma que tienen para de esa manera poder ayudarte, porque no me queda claro si cada campo está separado del otro por un guión(-) o un espacio en blanco. Además si cada campo consta de una o más palabras.
Ejemplo:
1. Perú-Lima-56
2. Perú Lima 56
3. Argentina-Buenos Aires-Av de la tradición

Especifica cuál es la forma, sobre todo de qué forma se separa cada campo.
Un saludo.
eduar2083
Navegador Iniciado
Mensajes: 4
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
#135
Re: Manejo de archivos en C Creado el día: 20/08/2011 17:31 Karma: 0
Pregunta:

En estos ejemplos de manejos de archivos, solo se muestran archivos *.txt.

Se pueden manejar otros tipos de archisvos que usa Windows?

Gracias...
Maxi
Navegador Iniciado
Mensajes: 10
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
#203
Re: Manejo de archivos en C Creado el día: 10/02/2012 14:57 Karma: 0
un codigo para calcular el area del circulo
antonio
Navegador Iniciado
Mensajes: 1
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
ArribaPágina: 1
obtén los últimos mensajes directamente en tu escritorio