/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Invertir lineas de un archivo sin limite de caracteres

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
hongee



Registrado: 16 Nov 2013
Mensajes: 23

MensajePublicado: 23/02/2014 11:01 am
Título: Invertir lineas de un archivo sin limite de caracteres

Estimados, esta ves vengo con una consulta. Leo de un archivo sus lineas y tengo que dejarlo en otro en forma invertida.
Por ej:
Archivo Origen:
hola 1
como estas 2
bien y vos? 3
aca ando 4

Archivo destino:
aca ando 4
bien y vos? 3
como estas 2
hola 1

Aca el codigo funcionando
Código:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#pragma warning (disable: 4996)

#define lineas 100
#define caract 100


int main()
{

   FILE *ori, *dest;
    int i;
     char linea[lineas][caract];

   ori=fopen("C:/Users/home/Desktop/origen.txt","rt");
   if (ori==NULL)
      {
         printf ("No se puede leer el archivo");
         return 1 ;
   }

   dest=fopen("C:/Users/home/Desktop/destino.txt","wt");
   if (dest==NULL)
   {
      printf ("No se puede grabar el archivo");
      return 1 ;
   }
 
   i=0;
   fgets(linea[i],caract,ori);
   printf ("Palabras del archivo origen:\n",linea[i]);
   while (!feof(ori))
   {
      printf ("%s",linea[i]);   
      i++;
      fgets(linea[i],caract,ori);
   }

    fclose (ori);
   printf ("##############################\n");
   /* Escritura de las lineas en forma inversa en el archivo de salida */
   printf ("Palabras del archivo destino:\n");
   while (i-- > 0)
   {
      printf ("%s",linea[i]);
      fputs(linea[i], dest);
   }
   fclose (dest);

   system ("pause");
}


Como verán utilizo un vector de cadenas de caracteres para hacerlo, pero lo que tiene de desventaja es que tengo que poner un tamaño para la cadena.

Queria saber como puedo hacerlo, sin necesidad de poner un tamaño fijo de la cadena ya que me parece que seria lo mejor.

Muchas Gracias
Saludos
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com