Documentazione
Torna al sito web >

Client.LoadText, SaveText (iScript)

Salva una stringa (testo) come valore di file o registro o legge un testo da un file o registro.

s = Client.LoadText (Location [, Options])
Client.SaveText(s, Location [, Options])

Parameter

Location: string

Nome del file o valore del registro, compreso il percorso. Per i valori di registro, è necessario specificare il prefisso "registry://".

Esempio di specificazione di un file:

C:\temp\MeineTextdatei.txt

Esempio per il registro di sistema:

registry://ROOT/Modules/Grundwerte/Firmenstamm/disclaimer.txt

options: variant [optional]

Specificazione dello charset o stringa di opzioni.

ValoreValore predefinitoDescrizione
Charset
string
predefinito di sistema
Valore 
UTF-8  
UTF-16 Codifica a 16 bit in ordine di byte Intel (Little Endian)
UTF-16BE Codifica a 16 bit in ordine byte Motorola (Big Endian)
ibm437 MS-DOS
(altre) Sono possibili anche altri set di caratteri installati in Windows. In genere, i nomi corrispondenti si trovano nel registro di Windows sotto HKEY_CLASSES_ROOT\MIME\Database\Charset.
Se il set di caratteri specificato non è supportato, viene visualizzato un messaggio di errore.
WriteBOM
Boolean
"TRUE","FALSE"
"TRUE" Per distinguere tra i diversi formati di memorizzazione Unicode UTF-8, UTF-16 e UTF-16BE e i normali file Ansi, lo standard Unicode prevede la scrittura di un cosiddetto byte order mark (BOM) all'inizio del file. Questo a volte può causare problemi durante l'ulteriore elaborazione sui sistemi Unix. È anche insolito con i siti web codificati UTF-8 e porta a problemi di visualizzazione nel browser. In questi casi la WriteBOM può essere impostata su "0".
Overwrite
Boolean
"TRUE","FALSE"
"TRUE" solo per SaveText: Se l'opzione Sovrascrivi è impostata su Falso, viene visualizzato un messaggio di errore se il file esiste già. Altrimenti viene sovrascritto.
Se Append è VERO, la sovrascrittura non viene valutata.
CheckExists
Boolean
"TRUE","FALSE"
"FALSE" solo per LoadText: Se CheckExists è impostato su True, viene visualizzato un messaggio di errore. Se il valore del file o del registro è impostato su "FALSE", viene restituita una stringa vuota.
Append
Boolean
"TRUE","FALSE"
"FALSE" Se il file esiste già, il testo viene aggiunto al file. Questa opzione è disponibile solo per i file.
Quando si allega un file esistente, assicurarsi di utilizzare lo stesso set di caratteri del file originale. Non vi è alcun riconoscimento automatico dei dati disponibili!
Non viene aggiunto alcun interlacciamento automatico durante l'aggiunta. In VBScript questo può essere fatto con la costante vbCrLf (vedere esempio B)

Esempi

A. Salvataggio di un testo con diversi set di caratteri.

Lo script seguente crea un testo a tre righe che contiene caratteri cinesi e umlaut. Il testo viene quindi salvato sul desktop in diversi set di caratteri. Dopo lo script viene visualizzata una schermata con le rappresentazioni esadecimali dei singoli file. Nota: Il testo di esempio visualizzato deve essere copiato direttamente nell'editor iScript. Durante il salvataggio nell'editor, i caratteri speciali vengono persi perché il registro non è ancora compatibile con Unicode.

VBScript
dim sl, s, desktop
set sl = client.NewStrings
sl.Add "Umlaute: öäüÖÄÜ und ß"
sl.Add "chinese: 系统正在测试中"
sl.Add "ENDE"

desktop = client.properties("folder.desktop") & "\"
s = sl.Text

Client.SaveText s, Desktop & "SaveText_Ansi.txt"
Client.SaveText s, Desktop & "SaveText (MS-DOS).txt", "ibm437"
Client.SaveText s, Desktop & "SaveText (UTF-8 mit BOM).txt", "utf-8"
Client.SaveText s, Desktop & "SaveText (UTF-16 mit BOM).txt", "utf-16"
Client.SaveText s, Desktop & "SaveText (UTF-16BE mit BOM).txt", "utf-16BE"

' se deve essere specificato qualcosa di diverso da "charset", 
' le opzioni devono essere qualificate per nome
Client.SaveText s, Desktop & "SaveText (UTF8 ohne BOM).txt", _ "charset=utf-8;writebom=0"

Rappresentazione esadecimale dei diversi set di caratteri:

Verschiedene Zeichensätze und Kodierungen beim Speichern im HEX-Vergleich

B. Allegare a un file

dim i, filename

filename = client.properties("folder.desktop") & "\SaveText_Append.txt"
options = "charset=utf-8;append=1"
' I numeri sono scritti uno dopo l'altro su una riga
for i = 1 to 9
  Client.SaveText CStr(i), Filename, options
next
' Aggiunta riga per riga con vbCrLf
for i = 1 to 9
  Client.SaveText " - Zeile " & CStr(i) & vbCrLf, Filename, options
next