PC SOFT

AYUDA EN LÍNEA
DE WINDEV, WEBDEV Y WINDEV MOBILE


Este contenido proviene de una traducción automática.. Haga clic aquí para ver la versión original en inglés.
  • Gestión de errores
  • Posición en el fichero
  • Gestión del formato ANSI/UNICODE
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Otros
Procedimientos almacenados
Lee una línea en un archivo externo.
Windows Mobile El string leído está en formato UNICODE, independientemente del formato del fichero externo.
PHP En esta versión, sólo tiene la capacidad de leer una línea en un archivo externo en formato ANSI.
Versiones 15 y posteriores
Android Esta función ahora está disponible para aplicaciones Android.
Nueva funcionalidad versión 15
Android Esta función ahora está disponible para aplicaciones Android.
Android Esta función ahora está disponible para aplicaciones Android.
Versiones 16 y posteriores
Universal Windows 10 App Esta función ahora está disponible para aplicaciones Windows Phone.
Nueva funcionalidad versión 16
Universal Windows 10 App Esta función ahora está disponible para aplicaciones Windows Phone.
Universal Windows 10 App Esta función ahora está disponible para aplicaciones Windows Phone.
Versiones 17 y posteriores
iPhone/iPad Esta función ahora está disponible para aplicaciones iPhone/iPad.
Nueva funcionalidad versión 17
iPhone/iPad Esta función ahora está disponible para aplicaciones iPhone/iPad.
iPhone/iPad Esta función ahora está disponible para aplicaciones iPhone/iPad.
Versiones 18 y posteriores
Widget Android Esta función ahora está disponible en modo Android Widget.
Universal Windows 10 App Esta función ahora está disponible en modo Windows Store apps.
Nueva funcionalidad versión 18
Widget Android Esta función ahora está disponible en modo Android Widget.
Universal Windows 10 App Esta función ahora está disponible en modo Windows Store apps.
Widget Android Esta función ahora está disponible en modo Android Widget.
Universal Windows 10 App Esta función ahora está disponible en modo Windows Store apps.
Versiones 21 y posteriores
Universal Windows 10 App Esta función ahora está disponible en modo Universal Windows 10 App.
Nueva funcionalidad versión 21
Universal Windows 10 App Esta función ahora está disponible en modo Universal Windows 10 App.
Universal Windows 10 App Esta función ahora está disponible en modo Universal Windows 10 App.
Ejemplo
WINDEVWEBDEV - Código ServidorReportes y ConsultasJavaPHPAjaxCódigo de Usuario (UMC)
// Open an external file
FileID = fOpen("C:\MyDirectories\File.txt", foReadWrite)
IF FileID <> -1 THEN
// Read a line in this file
ResRead = fReadLine(FileID)
...
END
Windows Mobile
// Open an external file
FileID = fOpen("\MyDirectories\File.txt", foReadWrite)
IF FileID <> -1 THEN
// Read a line in this file
ResRead = fReadLine(FileID)
...
END
Sintaxis
<Result> = fReadLine(<File identifier> [, <Separator>])
<Result>: Character string or UNICODE character string
  • Línea leída en un fichero externo.
  • PUNTO DE ENGAÑO constante si se ha alcanzado el final del archivo.
  • Vaciar la cadena (""") si se ha producido un error. En este caso, la ErrorOcurrió variable se fija en True.
señalar: Una línea termina con un carácter CR (Carriage Return).
PHP Este parámetro debe ser un string.
<File identifier>: Integer
Identificador del fichero a utilizar, definido por fOpen o fCreate.
PHP Este parámetro debe ser una variante.
<Separator>: Character string (with or without quotes)
Versiones 17 y posteriores
Separador utilizado entre las líneas. El separador predeterminado es el Retorno de carro (CR).
AndroidWidget Android JavaPHP Este parámetro no está disponible. El separador utilizado es el Retorno de carro (CR).
Nueva funcionalidad versión 17
Separador utilizado entre las líneas. El separador predeterminado es el Retorno de carro (CR).
AndroidWidget Android JavaPHP Este parámetro no está disponible. El separador utilizado es el Retorno de carro (CR).
Separador utilizado entre las líneas. El separador predeterminado es el Retorno de carro (CR).
AndroidWidget Android JavaPHP Este parámetro no está disponible. El separador utilizado es el Retorno de carro (CR).
Observaciones

Gestión de errores

fReadLine genera un error en los siguientes casos:
  • el archivo no se abre,
  • el archivo no es accesible en modo de lectura,
  • el archivo está bloqueado por otro ordenador o por otra aplicación. fUnlock se utiliza para desbloquear un archivo externo.

Posición en el fichero

Al abrir un archivo, la posición actual corresponde a:
  • el primer byte del archivo (por defecto),
  • el último byte del archivo es que el archivo se abre en modo "addition" (foAdd constante).
Esta posición puede ser modificada por fSeek.
fReadLine lee los elementos especificados desde la posición actual. Una vez fReadLine la posición actual corresponde al último byte leído. fReadLine devuelve el archivo PUNTO DE ENGAÑO si se ha alcanzado el final del archivo.
WINDEVWEBDEV - Código ServidorReportes y ConsultasWindows MobileAjaxCódigo de Usuario (UMC)

Gestión del formato ANSI/UNICODE

fReadLine se usa para leer:
  • una cadena Unicode en un archivo Unicode.
  • una cadena Ansi en un archivo Ansi.
El archivo fue creado o abierto por fCreate/fOpen mientras se especificaba el tipo de archivo.
Según el formato del fichero externo utilizado, se requieren algunas conversiones una vez que se ha leído un string en un fichero externo:
Ordenador actual
Archivo externo
en formato ANSI
(fOpen o fCreate asociado con el foAnsi constante)
Archivo externo
en formato UNICODE
(fOpen o fCreate asociado con el foUnicode constante)
fReadLinePC con WindowsOperación de lectura en formato ANSI
Es posible la conversión a UNICODE con AnsiToUnicode
Pocket PCOperación de lectura en formato UNICODE
Es posible la conversión a ANSI con UnicodeToAnsi
Nota: Si el resultado de fReadLine en un archivo ANSI se asigna a una cadena UNICODE (y a la inversa), la conversión se realizará implícitamente.
Ver Gestionar formato UNICODE para más detalles
Componente : wd240std.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Lendo um arquivo TXT usando o controle LIST
//Insira um controle list comum e uma table com a coluna numero da linha e linha com 4096 posições.... e coloque um botao para buscar o arquivo em disco com fselect, ficando mais ou menos assim:

LIST_01.DeleteAll()

bufFile is Buffer = fLoadBuffer(EDT_Arquivo)

bufFile = UTF8ToAnsi(bufFile)

LIST_01.Add(bufFile)

IF LIST_01.Count() > 0 THEN

x is int

LOOP(LIST_01.Count())

x++

Txt_Import.Linha = LIST_01[x]

HAdd(Txt_Import)

END

END

TableDisplay(TABLE_Txt_Import,taInit)
BOLLER
15 08 2019
Example ReadFile
PROCEDURE ReadFile(ArquivoTxt is string, TipoUnicodeToAnsi is string)

//Le arquivo texto
INFO(TIMESYS())

// Declare the variables
PathFile is string = ArquivoTxt
IdFile, ResCloseFile, FileID, NumeroLinha is int
Line is string

NextTitle("Atencao")

IF fFileExist(ArquivoTxt) = true

// Open the file
FileID = fOpen(PathFile,foReadWrite)
IF IdFile = -1 THEN
Error(ErrorInfo(errMessage))
ELSE

if TipoAnsiUnicode = "UnicodeToAnsi"
//Converte de Unicode para Ansi
Line = UnicodeToAnsi(fReadLine(FileID))
else
Line = fReadLine(FileID)
end

//Linha 1
NumeroLinha = 1
/// ----COLOQUE AQUI O PROGRESS BAR = 1
//Info("Linha:" + NumeroLinha, Line) ///----------------- LINHA LIDA
//Inclua aqui a SUB Procedure de importacao dos dados

WHILE Line <> EOT AND Line <> ""

//Proxima linha
NumeroLinha += 1
/// ----COLOQUE AQUI O PROGRESS BAR + 1
Line = fReadLine(FileID)
//Info("Linha:" + NumeroLinha, Line) ///----------------- LINHA LIDA
//Inclua aqui a SUB Procedure de importacao dos dados
END
IF Line = "" THEN Error(ErrorInfo(errMessage))
IF Line = EOT THEN Info("Final do Arquivo.")
ResCloseFile = fClose(IdFile)
IF ResCloseFile = -1 THEN
//Error(ErrorInfo(errMessage))
END

END

ELSE
Info("Arquivo não encontrado!")
END

info(NumeroLinha,TIMESYS())

//Codigo Desenvolvido com a Ajuda do Marcos Roberto Araujo de Carvalho de Gurupi - TO - BR
adrianoboller
21 02 2015