Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-01-2006
torete_86 torete_86 is offline
Miembro
 
Registrado: dic 2005
Posts: 12
Poder: 0
torete_86 Va por buen camino
mostrar fichero linea a linea

buenas.

necesitaria saber como mostrar un fichero linea a linea.

tengo un fichero .txt en el que hay un texto escrito en varias lineas. La cuestion esque no se muy bien como mostrarlo por pantalla linea a linea.

si no tengo mal entendido es con la funcion gets.

he conseguido que fuera pero no me interesa la forma que lo he logrado. De la manera que funciona es esta:

Código:
void mostrar_fichero()
{
    char texto;
    FILE *f;

    f=fopen("datos.txt", "r");
    texto=getc(f);
    while (texto != EOF)
    {
        printf ("%c", texto);
        texto=getc(f);
    }
    fclose(f);
}
muchas gracias x adelantado
Responder Con Cita
  #2  
Antiguo 30-01-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No sé si será la forma más eficiente, pero, es muy práctico hacer uso de la clase "TStrings" para lo que pretendes. La misma cuenta con métodos "LoadFromFile", "SaveToFile", etc. Alberga el contenido del archivo y permite acceder a las líneas del mismo de una forma sencilla. Échale un vistazo a la ayuda de C++ Builder sobre la clase "TStrings" a ver qué te parece.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 30-01-2006
torete_86 torete_86 is offline
Miembro
 
Registrado: dic 2005
Posts: 12
Poder: 0
torete_86 Va por buen camino
Buenas dec.

muchas gracias por la ayuda. He encontrado una manera de hacerlo que aunque no parece muy fiable funciona.

os la dejo por si alguien le sirve.

Código:
void introduir_fitxer_linia()
{
    FILE *f;
    text linia;

    f=fopen("datos_linia.txt","w");
    printf("\n");
    printf("introdueix el text");
    printf("\n");
    (void)flushall();
    do
    {
        gets(linia);
        fputs(linia, f);
        fputs("\n" ,f);
    }while(strlen(linia)!=0);
    fclose(f);
}
gracias y saludos
Responder Con Cita
  #4  
Antiguo 30-01-2006
Avatar de OSKR
OSKR OSKR is offline
Miembro
 
Registrado: nov 2004
Ubicación: San Cristóbal/Táchira/Venezuela
Posts: 389
Poder: 20
OSKR Va por buen camino
No te creo eso de q te funciona o no decias la verdad en la primera ocasion.....ahi lo q estas haciendo es escribir en un fichero en vez de leerlo, de paso, si este existe antes ce llamar el fopen, este sera vaciado por el "w" q tienes en el modo de apertura
Código:
void mostrar_fichero() { char texto; FILE *f=fopen("datos.txt", "r"); if(!f) { perror("no se pudo abrir datos.txt"); return; } texto=fgetc(f); while(texto != EOF) { fputc(texto,stdout); texto=fgetc(f); } fclose(f); }
__________________
Los Estados Unidos parecen destinados por la Providencia para plagar la América de miserias a nombre de la libertad."
Simón Bolívar
(Carta al Coronel Inglés Patricio Cambell 05/08/1829).
Responder Con Cita
  #5  
Antiguo 30-01-2006
torete_86 torete_86 is offline
Miembro
 
Registrado: dic 2005
Posts: 12
Poder: 0
torete_86 Va por buen camino
jajajaja perdon tio... me equivoque al pegarlo.

esque tenia las dos acciones echas y puse la que no era.

disculpar mi error.

gracias por la correccion
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Un programa autoejecutable REHome Varios 7 10-11-2005 23:21:10
Mostrar linea de un Memo Ariel46 OOP 3 01-11-2005 22:30:34
Seleccionar una linea de un dbgrid y mostrar todos los datos... hook Varios 1 15-04-2005 13:38:49
Posicionamiento en línea de fichero jymy788 Varios 1 11-04-2005 16:44:34
Leer un fichero .ini oesteve OOP 6 16-06-2003 16:40:20


La franja horaria es GMT +2. Ahora son las 11:20:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi