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
  • Modo de funcionamiento en Windows Vista (y posterior)
  • Modo de apertura del archivo
  • Múltiples aperturas del mismo archivo
  • Posición en el fichero
  • Concatenación de varios archivos externos
  • Compatibilidad entre las diferentes versiones de WINDEV/WEBDEV
  • Bloqueo y desbloqueo
  • Gestión de archivos de texto en formato UNICODE
  • Abrir un puerto de infrarrojos
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
Abre un fichero externo (ANSI o UNICODE) para manipular ello programando. Usted también tiene la capacidad de usarfLoadText.
comentario:
  • Para manipular archivos de texto externos, recomendamos que utilice fLoadText / fSaveText y fLoadBuffer / fSaveBuffer.
  • Para archivos externos manipular binarios, use fCreate o fOpen.
  • Para abrir y visualizar un archivo externo en el software asociado (por ejemplo, para visualizar un archivo.DOC en Word), utilice ShellExecute.
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
ResOpening = fOpen("C:\MyDirectories\File.txt", foReadWrite)
IF ResOpening <> -1 THEN
...
END
Windows Mobile
// Open an external file
ResOpening = fOpen("\MyDirectories\File.txt", foReadWrite)
IF ResOpening <> -1 THEN
...
END
Windows Mobile
// Open an infrared port
ResOpening = fOpen("COM3", foWrite)
IF ResOpening <> -1 THEN
fWrite(ResOpening, "Bytes to transmit")
END
Sintaxis
<Result> = fOpen(<File Path> [, <Opening mode>])
<Result>: Integer
Corresponde a:
  • el identificador del fichero externo. Este identificador será utilizado por todas las funciones para manejar los archivos externos.
  • -1 si se produce un error. Para conocer los detalles del error, utilice ErrorInfo el comando Mensaje de error constante.
<File Path>: Character string (with quotes)
Nombre y nombre completo (o relativo) ruta del archivo (hasta 260 caracteres). Se puede utilizar un UNCruta.
Versiones 15 y posteriores
AndroidWidget Android Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En Android, el sistema de archivos es de sólo lectura en el dispositivo y en el emulador.. Una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios, así como en la memoria externa (SDCard).
Nueva funcionalidad versión 15
AndroidWidget Android Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En Android, el sistema de archivos es de sólo lectura en el dispositivo y en el emulador.. Una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios, así como en la memoria externa (SDCard).
AndroidWidget Android Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En Android, el sistema de archivos es de sólo lectura en el dispositivo y en el emulador.. Una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios, así como en la memoria externa (SDCard).
Windows Mobile Esto ruta debe ser un completo ruta o un UNC ruta. No puede ser un familiar ruta.
Versiones 16 y posteriores
Universal Windows 10 App Teléfono con Windows: El archivo ruta corresponde a un pariente ruta en relación con el directorio actual. El directorio actual corresponde al directorio de datos de la aplicación.
Recordatorio: Sólo se pueden manejar los archivos que se encuentran en el directorio de datos asociado con la aplicación.
Nueva funcionalidad versión 16
Universal Windows 10 App Teléfono con Windows: El archivo ruta corresponde a un pariente ruta en relación con el directorio actual. El directorio actual corresponde al directorio de datos de la aplicación.
Recordatorio: Sólo se pueden manejar los archivos que se encuentran en el directorio de datos asociado con la aplicación.
Universal Windows 10 App Teléfono con Windows: El archivo ruta corresponde a un pariente ruta en relación con el directorio actual. El directorio actual corresponde al directorio de datos de la aplicación.
Recordatorio: Sólo se pueden manejar los archivos que se encuentran en el directorio de datos asociado con la aplicación.
Versiones 17 y posteriores
iPhone/iPad Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En iPhone/iPad, una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios.
Nueva funcionalidad versión 17
iPhone/iPad Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En iPhone/iPad, una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios.
iPhone/iPad Este parámetro puede corresponder a un completo ruta o a un pariente ruta en relación al directorio actual (devuelto por fCurrentDir). Este parámetro distingue entre mayúsculas y minúsculas.
Recordatorio: En iPhone/iPad, una aplicación tiene derecho a escribir en su directorio de instalación o en uno de sus subdirectorios.
<Opening mode>: Optional constant (or combination of constants)
Constantes utilizadas para definir el modo de apertura del archivo, el modo de acceso al archivo y el modo de bloqueo del archivo.
  • Modo de apertura del archivo:
    foAddAbrir el archivo en modo "adición. En el momento de la apertura, la posición actual corresponde al último byte del archivo.
    foCrearCreación del fichero. Si el archivo ya existe (mismo nombre, mismo directorio), este archivo se borra y se vuelve a crear.
    paraCrear si no existeCree el fichero sólo si este fichero no existe.
    • Si el archivo no existe, abra el archivo en modo "adicional".
    • Si el archivo existe, la posición actual corresponde al primer byte del archivo.
  • Modo de acceso al archivo. Este tipo se utiliza fWriteLine para fReadLine definir el tipo de información que se debe leer y escribir en el archivo externo:
    Versiones 17 y posteriores
    foAnsi
    Nueva funcionalidad versión 17
    foAnsi
    foAnsi
    Archivo Ansi. Esta constante se utiliza para gestionar un archivo Ansi cuando el modo "Use the Unicode strings at run time" está habilitado en la configuración del proyecto.
    Modo utilizado por defecto:
    • en los proyectos WINDEV y WEBDEV antes de la versión 17.
    • en las configuraciones de los proyectos WINDEV y WEBDEV que utilizan el modo "Use the Ansi strings at run time" a partir de la versión 17.
    foUnicodeArchivo Unicode. Esta constante se utiliza para gestionar un archivo Unicode cuando el modo "Use the Ansi strings at run time" está habilitado en la configuración del proyecto.
    Modo utilizado por defecto:
    • en los proyectos de WINDEV Mobile independientemente del modo y versión utilizados.
    • en las configuraciones de los proyectos WINDEV y WEBDEV que utilizan el modo "Use the Unicode strings at run time" a partir de la versión 17.
    AndroidWidget Android JavaPHP Esta constante no está disponible.
  • Modo de bloqueo de archivos:
    foWriteLockLas otras aplicaciones no pueden modificar el archivo actual.
    LinuxAndroidWidget Android Windows MobileJavaPHP Esta constante no está disponible.
    para Bloqueo de LecturaLas otras aplicaciones no pueden leer el fichero actual.
    LinuxAndroidWidget Android Windows MobileJavaPHP Esta constante no está disponible.
    fOrMaAbrir el archivo en modo "sólo escritura. Este archivo sólo puede ser modificado.
    AndroidWidget Android Java Esta constante no está disponible.
    PARA LEERAbrir el archivo en modo "sólo lectura. Este archivo sólo puede ser leído.
    PARA LEER ESCRIBIR
    (Valor predeterminado)
    Abrir el archivo en modo "lectura/escritura. Este archivo puede ser leído y modificado (equivalente a PARA LEER+fOrMa).
    Versiones 16 y posteriores
    para borrado automático
    Nueva funcionalidad versión 16
    para borrado automático
    para borrado automático
    El archivo se bloquea cuando se abre y se borra automáticamente cuando se cierra (llamada a fClose o al final de la aplicación)..
    Si este archivo es abierto por varias aplicaciones, el archivo se borrará automáticamente cuando la última aplicación cierre el archivo (llamada a fClose o al final de la aplicación).
    LinuxWindows Mobile Esta constante no está disponible.
    Java Si el archivo es utilizado por otra aplicación cuando está cerrada (llamada a fClose o al final de la aplicación), no se eliminará.
  • Versiones 19 y posteriores
    Otras opciones:
    foAccesoSecuencialOptimiza la gestión de las cachés del archivo especificando a Windows que el archivo se leerá desde el principio hasta el final..
    AndroidWidget Android JavaPHP Esta constante no está disponible.
    Nueva funcionalidad versión 19
    Otras opciones:
    foAccesoSecuencialOptimiza la gestión de las cachés del archivo especificando a Windows que el archivo se leerá desde el principio hasta el final..
    AndroidWidget Android JavaPHP Esta constante no está disponible.
    Otras opciones:
    foAccesoSecuencialOptimiza la gestión de las cachés del archivo especificando a Windows que el archivo se leerá desde el principio hasta el final..
    AndroidWidget Android JavaPHP Esta constante no está disponible.
Observaciones

Gestión de errores

fOpen genera un error en los siguientes casos:
  • el archivo no existe,
  • el archivo está bloqueado por otro ordenador o por otra aplicación,
  • el usuario no tiene derechos de lectura o escritura sobre el archivo a abrir.
  • se utilizó una cadena Unicode para <File Path> en un sistema operativo como Windows 98 o Windows Me.
Nota: La apertura en modificación de un archivo encontrado en un disquete protegido contra escritura se ha realizado con éxito.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)

Modo de funcionamiento en Windows Vista (y posterior)

Si esta función no funciona correctamente en Windows Vista (y posteriores), compruebe si el archivo utilizado no se encuentra en uno de los directorios del sistema (directorio de Windows o directorio "Archivos de programa").
De hecho, en Windows Vista (y posterior), con el (Control de Mecanismo UAC cuentas de usuario) activadodebe tener privilegios de administrador para manipular y/o modificar los archivos que se encuentran en los directorios de sistema (directorio de Windows o directorio "Archivos de programa").
Consejo de programación: Para manipular y/o modificar los archivos sin tener privilegios de administrador, debe hacerlo:
  • evite escribir en el directorio de Windows o en el directorio "Archivos de programa",
  • utilizar el directorio de sistema correspondiente a la aplicación (devuelto por SysDir asociado con el comando srCommonAppData constante).

Modo de apertura del archivo

Por defecto, si no se especifica el modo de acceso al archivo, éste se abre según el atributo de archivo (definido en Windows).
Se produce un error si el modo de acceso especificado no corresponde al atributo de archivo.
Un archivo en modo "lectura/escritura" puede abrirse en todos los modos de acceso propuestos por fOpen (fOrMa, PARA LEER y PARA LEER ESCRIBIR constantes).
Un archivo en modo "sólo lectura" sólo puede abrirse en modo "sólo lectura" (PARA LEER constante).

Múltiples aperturas del mismo archivo

El mismo archivo se puede abrir varias veces simultáneamente. Cada apertura está asociada a un identificador de archivo diferente. Cada versión del archivo debe ser manejada individualmente a través de su propio identificador.

Posición en el fichero

Al abrir un archivo, la posición actual corresponde a:
  • el primer byte de archivo,
  • el último byte del archivo es que el archivo se abre en modo "addition" (foAdd constante).
Esta posición puede ser modificada por fSeek.

Concatenación de varios archivos externos

Para concatenar varios archivos externos, debe hacerlo:
  • abrir el fichero de destino en modo "addition" (foAdd constante),
  • abrir el archivo fuente en modo "sólo lectura" (PARA LEER o PARA LEER ESCRIBIR constante),
  • leer el archivo fuente línea por línea con fReadLine,
  • escriba en el fichero de destino línea por línea con fWriteLine.

Compatibilidad entre las diferentes versiones de WINDEV/WEBDEV

El foTexto (apertura en modo texto) y la constante foBinario constante (apertura en modo binario) ya no son necesarias. Se sustituyen por el valor 0. En este caso, fOpen intenta abrir el archivo en lectura/escritura.
WINDEVWEBDEV - Código ServidorReportes y ConsultasUniversal Windows 10 AppAjaxCódigo de Usuario (UMC)

Bloqueo y desbloqueo

Un archivo bloqueado cuando se abre (para Bloqueo de Lectura o foWriteLock ) se desbloqueará automáticamente cuando se cierre (porfClose).
WINDEVWEBDEV - Código ServidorReportes y ConsultasWindows MobileAjaxCódigo de Usuario (UMC)

Gestión de archivos de texto en formato UNICODE

fOpen se utiliza para leer y escribir archivos de texto en formato UNICODE "UTF-16 little endian".
La sintaxis:
  • fOpen(<Nombre de archivo>, foRead + foUnicode): se usa para abrir un archivo Unicode. Si la marca "Current Unicode" (FFFE) se encuentra al principio del archivo, se lee automáticamente.
  • fOpen(<Nombre de archivo>, foCreación + foUnicode): se usa para crear un archivo Unicode. La marca "Current Unicode" (FFFE) se añade automáticamente al principio del archivo..
  • fOpen (<Nombre de archivo>, foCreationIfNotFound + foUnicode): se utiliza para crear un fichero UNICODE si este fichero no existe. La marca "Current Unicode" (FFFE) se añade automáticamente al principio del archivo que se está creando.. Si el archivo existe y comienza con la marca "Current Unicode" (FFFE), esta marca se lee automáticamente.
Windows Mobile

Abrir un puerto de infrarrojos

fOpen también se puede utilizar para abrir un puerto de infrarrojos. Tendrá la capacidad, por ejemplo, de enviar una secuencia de bytes al puerto.
Una vez abierto, el puerto infrarrojo se comporta como un archivo externo. Puede ser manejado por elfunciones para ficheros externos.
Para abrir un puerto infrarrojo, utilice la siguiente sintaxis:
<Result> = fOpen("COM3:", foWrite)
Componente : wd240std.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
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())
adrianoboller
21 02 2015