Mètode ReadTextLine
Sintaxi
Invoke ReadTextLine, hHandle, lpszBuffer
Funció
Llegeix una línia de text d'un fitxer obert.
Paràmetres
hHandle
Handle del fitxer de text obert (tornat pel mètode OpenTextFile).
lpszFileName
Punter a una zona de memòria (buffer) que rebrà la línia de text. Pot ser NULL si es vol obtenir la llargada de la línia (en bytes).
Valors de retorn
Si el fitxer no s'ha pogut llegir, Eax torna -1.
Si lpszBuffer és el punter a una zona de memòria, Eax torna TRUE si s'ha pogut llegir la línia, o FALSE si s'ha arribat al final del fitxer (EOF).
Si lpszBuffer és NULL, Eax torna la llargada de la línia (en bytes) incloent-hi el caràcter nul final, o FALSE si s'ha arribat al final del fitxer (EOF).
Els caràcters <CR>
i
<LF>
(Carriage
Return
i Line
Feed)
determinen el final d'una
línia. Aquest mètode llegeix caràcters
fins que troba qualsevol de les següents combinacions:
<CR> + <LF>
<LF> + <CR>
<CR> no seguit ni precedit per <LF>
<LF> no seguit ni precedit per de <CR>
NOTA:
Els caràcters <CR>
i/o <LF>
indiquen el final d'una línia, però no es
dipositen al buffer apuntat per lpszBuffer.
OBSERVACIONS:
El mètode ReadTextLine
intenta llegir una cadena Unicode si la aplicació s'està
executant com a Unicode, o una cadena ANSI si no.
Podeu utilitzar ReadTextLineA
per llegir cadenes ANSI en aplicacions
Unicode, o ReadTextLineW
per llegir cadenes Unicode en aplicacions
ANSI.
Quan llegiu fitxers Unicode, recordeu que els dos primers
bytes (una paraula) no són un caràcter Unicode,
sinó un codi
que identifica el tipus de format Unicode (0FFFEH
= little
endian, 0FEFFH
= big endian).
IMPORTANT:
Cal que us assegureu que la zona de memòria (buffer)
apuntada per lpszBuffer
és prou gran per rebre la línia que s'ha de
llegir. Crideu aquest mètode
amb lpszBuffer
posat a NULL
si voleu saber quants bytes es necessiten per contenir
la próxima línia que s'ha de llegir.