Scopo
Questa procedura apre un file in modalità di lettura.
Sintassi
Applicazione.OpenFileForInput(percorso, numero file)
Argomenti
Percorso | Percorso completo del file. |
Numero File | Identificatore del file ottenuto con la funzione FreeFile. |
Encoding | Encoding del file. Parametro opzionale con valore predefinito l'encoding predefinito dell'ambiente (normalmente Windows-1252 su Windows, UTF-8 su Linux). |
Esempio
event OggettoFS.OnGetNamedPropertyValue(
string PropertyName //
inout string PropertyValue //
)
{
// Se è stata richiesta data e ora di ultima modifica
if PropertyName = UltimaModifica
...
//
// Se è stata richiesta la dimensione
if PropertyName = Dimensione
...
//
// Se è stata richiesta l'estensione
if PropertyName = Estensione
...
//
// Se è stato richiesto il contenuto
if PropertyName = Contenuto
{
// Se è un file
if GetNamedPropertyValue(Cartella) = False
{
if IsNull(Contenuto)
{
int FileNumber = 0 //
//
// Provo a leggere il contenuto
try
{
// Ottengo il prossimo numero di file disponibile
FileNumber := FreeFile()
//
// Apro il file in lettura
EsempiMS.OpenFileForInput(GetNamedPropertyValue(NomeCompleto), FileNumber)
//
// Finché non ho letto tutto il file
while NOT(EOF(FileNumber))
{
string Line = "" //
//
// Leggo una parte di contenuto
EsempiMS.ReadLine(FileNumber, Line)
//
// Lo accodo
PropertyValue := PropertyValue +c Line
}
//
// Chiudo il file
EsempiMS.CloseFile(FileNumber)
}
}
else
{
PropertyValue := Contenuto
}
}
}
}
string PropertyName //
inout string PropertyValue //
)
{
// Se è stata richiesta data e ora di ultima modifica
if PropertyName = UltimaModifica
...
//
// Se è stata richiesta la dimensione
if PropertyName = Dimensione
...
//
// Se è stata richiesta l'estensione
if PropertyName = Estensione
...
//
// Se è stato richiesto il contenuto
if PropertyName = Contenuto
{
// Se è un file
if GetNamedPropertyValue(Cartella) = False
{
if IsNull(Contenuto)
{
int FileNumber = 0 //
//
// Provo a leggere il contenuto
try
{
// Ottengo il prossimo numero di file disponibile
FileNumber := FreeFile()
//
// Apro il file in lettura
EsempiMS.OpenFileForInput(GetNamedPropertyValue(NomeCompleto), FileNumber)
//
// Finché non ho letto tutto il file
while NOT(EOF(FileNumber))
{
string Line = "" //
//
// Leggo una parte di contenuto
EsempiMS.ReadLine(FileNumber, Line)
//
// Lo accodo
PropertyValue := PropertyValue +c Line
}
//
// Chiudo il file
EsempiMS.CloseFile(FileNumber)
}
}
else
{
PropertyValue := Contenuto
}
}
}
}
- Se il numero file non è valido, allora questa procedura non fa nulla.
- Se il file non esiste, viene generata un'eccezione.
Ultima modifica: 23/03/2021 / Validità: da 7.0.3200