Differenze tra le versioni di "Leggere i dati di un file in formato stringa"

Da Gambas-it.org - Wikipedia.
Riga 13: Riga 13:
 
   
 
   
 
  End
 
  End
Quando si utilizzano i dati di un file, si nota una grande differenza, dovuta al cosiddetto ''task switching''.
+
Quando si utilizzano i dati di un file, si nota una grande differenza, dovuta al cosiddetto ''task switching'' <SUP>&#091;[[#Note|nota 2]]&#093;</sup>.
 
<BR>È più veloce leggere un intero file dal disco rigido alla memoria e poi elaborare i dati piuttosto che leggere una riga, elaborare una riga, leggere un'altra riga, elaborare un'altra riga e così via.
 
<BR>È più veloce leggere un intero file dal disco rigido alla memoria e poi elaborare i dati piuttosto che leggere una riga, elaborare una riga, leggere un'altra riga, elaborare un'altra riga e così via.
 
<BR>Ai tempi dei computer single-core, questo problema era molto grave.
 
<BR>Ai tempi dei computer single-core, questo problema era molto grave.
Riga 25: Riga 25:
 
=Note=
 
=Note=
 
[1] Le operazioni più complesse, ovvero l'inserimento di testo (o binario) in un file esistente deve essere fatto usando comandi più a basso livello, come [https://gambaswiki.org/wiki/lang/open?l=it OPEN], [https://gambaswiki.org/wiki/lang/read?l=it READ] e [https://gambaswiki.org/wiki/lang/write?l=it WRITE]. Le opzioni che è possibile aggiungere a questi comandi, sono fatte apposta per determinare il comportamento delle operazioni sul file.
 
[1] Le operazioni più complesse, ovvero l'inserimento di testo (o binario) in un file esistente deve essere fatto usando comandi più a basso livello, come [https://gambaswiki.org/wiki/lang/open?l=it OPEN], [https://gambaswiki.org/wiki/lang/read?l=it READ] e [https://gambaswiki.org/wiki/lang/write?l=it WRITE]. Le opzioni che è possibile aggiungere a questi comandi, sono fatte apposta per determinare il comportamento delle operazioni sul file.
 +
 +
[2] Il ''task switching'' è il passaggio anche molto rapido da un compito all’altro.

Versione delle 07:38, 14 ago 2024

Il Metodo ".Load()" della Classe File consente di leggere i dati di un file in formato stringa.
Il Metodo "File.Load()" è un Metodo generico, fatto per eseguire la lettura in un'unica soluzione [nota 1], molto utile per operazioni veloci, e dove non è necessario un controllo più particolareggiato.

File.Load("/percorso/file/da/leggere")

Esempio:

Public Sub Main()

 Dim s As String

 s = File.Load("/percorso/file/da/leggere")

 Print s

End

Quando si utilizzano i dati di un file, si nota una grande differenza, dovuta al cosiddetto task switching [nota 2].
È più veloce leggere un intero file dal disco rigido alla memoria e poi elaborare i dati piuttosto che leggere una riga, elaborare una riga, leggere un'altra riga, elaborare un'altra riga e così via.
Ai tempi dei computer single-core, questo problema era molto grave.

Tuttavia, ci sono dei limiti. Un file potrebbe essere troppo grande per essere caricato tutto in una volta, perché contiene troppi dati (potrebbe essere più di quanto una variabile stringa possa contenere) o semplicemente richiede troppo tempo per essere caricato.
In questo caso, sarebbe meglio utilizzare l'immissione in linea.

Se si deve leggere solo una parte del file, è meglio usare “Open” e “Line Input”. [nota 1]


Note

[1] Le operazioni più complesse, ovvero l'inserimento di testo (o binario) in un file esistente deve essere fatto usando comandi più a basso livello, come OPEN, READ e WRITE. Le opzioni che è possibile aggiungere a questi comandi, sono fatte apposta per determinare il comportamento delle operazioni sul file.

[2] Il task switching è il passaggio anche molto rapido da un compito all’altro.