Il salvataggio ed il caricamento di UDT è semplice come passare l'UDT ad un QFileStream o QMemoryStream. TYPE TTest
S AS STRING*8
N AS INTEGER
END TYPE
DIM Test AS TTest
DIM File AS QFileStream
File.Open('test.txt', fmCreate)
File.WriteUDT(Test)
File.Close
Nell'esempio precedente, sono stati salvati 12 byte nel file test.txt. Otto byte per la stringa S, e 4 per N. Per leggere l'UDT, utilizzare il metodo ReadUDT. File.Open('test.txt', fmOpenRead)
File.ReadUDT(Test)
Il salvataggio ed il caricamento di matrici è altrettanto semplice. DIM A(1 TO 100) AS LONG
DIM File AS QFileStream
File.Open('test.txt', fmCreate)
File.SaveArray(A(1), 100)
File.Close
Il primo parametro di SaveArray è l'elemento iniziale della matrice da salvare, e nell'esempio precedente può essere qualunque valore da 1 a 100. Il parametro successivo specifica quanti elementi della matrice salvare. In questo caso abbiamo scelto di salvare tutti gli elementi da 1 a 100. Analogamente, possiamo utilizzare LoadArray per leggere i dati: File.Open('test.txt', fmOpenRead)
File.LoadArray(A(1), 100)
Il flussi sono molto usati nella maggior parte dei linguaggi di alto livello per la manipolazione di file e memoria, ma non è facile abituarcisi, soprattutto per vecchi utenti Basic.