Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/08/2010, 22:53
chilecr4
 
Fecha de Ingreso: julio-2010
Mensajes: 18
Antigüedad: 14 años, 8 meses
Puntos: 0
Leer archivo por partes

Hola gente!!

Estoy trabajando en un pequeño proyecto que consiste en crear un identador (tabulador) de código java, escrito en C++.

El programa debe abrir un archivo, el cual podría venir todo en una misma línea, procesarlo y luego escribir un nuevo archivo, con el código identado.

El problema que tengo, es que nos solicitan, que la lectura del archivo, no sea toda de una sola vez, si no que leemos una parte, la escribimos en un nuevo archivo y volvemos a leer, y así sucesivamente hasta terminar de procesar el archivo.

La idea inicial, es leer el archivo cada parte dividida por un ";". La primera expresión, la leo fácil, el problema es como volver a leer el archivo, iniciando por donde quedé.

Este el código que lee el archivo:

Código:
string Lector::leerExpresion(){

    char c;
    ifstream is;

    stringstream expresion;

    // Abre el archivo
    is.open ("prueba.java");

    // Mientras la lectura del archivo se correcta y no haya llegado a un ;
    while ( is.good() && (c != ';') ){
        c = is.get();       // Asigna el caracter a la variable
        if (is.good() && (c != '\t') ){
            expresion << c;     // Asigna a expresion el caracter, omitiendo los tabs
        }
    }

    // Cierra el archivo
    is.close();

    return expresion.str();

}
Saludos y de antemano, gracias