Método ReadTextLine


Prototipo

ReadTextLine Proto hHandle:HANDLE, lpszBuffer:LPSTR

Sintaxis

Invoke ReadTextLine, hHandle, lpszBuffer

Función

Lee una linea de texto de un archivo abierto.

Parámetros

hHandle

Handle del archivo de texto abierto (devuelto por el método OpenTextFile).

lpszFileName

Puntero a una zona de memoria (buffer) que recibirá la linea de texto. Puede ser NULL si se desea obtener la longitud de la linea (en bytes).

Valores de retorno

Si el archivo no se ha podido leer, Eax devuelve -1.

Si lpszBuffer es el puntero a una zona de memoria, Eax devuelve TRUE si se ha podido leer la linea, o FALSE si se ha llegado al final del archivo (EOF).

Si lpszBuffer es NULL, Eax devuelve la longitud de la linea (en bytes) incluyendo el carácter nulo final, o FALSE si se ha alcanzado el final del archivo (EOF).


Los caracteres <CR> y <LF> (Carriage Return y Line Feed) determinan el final de una linea. Este método lee caracteres hasta que encuentra cualquiera de las siguientes combinaciones:

<CR> + <LF>
<LF> + <CR>
<CR> no seguido ni precedido por <LF>
<LF> no seguido ni precedido por <CR>


NOTA: Los caracteres <CR> y/o <LF> indican el final de una linea, pero no se depositan en el buffer apuntado por lpszBuffer.

OBSERVACIONES: El método ReadTextLine intenta leer una cadena Unicode si la aplicación se está ejecutando como Unicode, o una cadena ANSI si no (vea el método IsAppUnicode). Puede utilizar ReadTextLineA para leer cadenas ANSI en aplicaciones Unicode, o ReadTextLineW para leer cadenas Unicode en aplicaciones ANSI.

Cuando lea archivos Unicode, recuerde que los dos primeros bytes (una palabra) no son un carácter Unicode, sino un código que identifica el tipo de formato Unicode (0FFFEH = little endian, 0FEFFH = big endian).


IMPORTANTE: Debe asegurarse de que la zona de memoria (buffer) apuntada por lpszBuffer es suficientemente grande para recibir la linea que se dispone a leer. Llame a este método con lpszBuffer puesto a NULL si desea saber cuantos bytes se necesitan para contener la próxima linea que se va a leer.