Menü

StringList-Objekt (iScript)

Zurück | Ebene zurück

Das StringList-Hilfsobjekt dient als Speicher für Texte, die aus mehreren Zeilen bestehen. Auf die einzelnen Zeilen kann dabei über ihre ordinale Position (Index von Null beginnend) zugegriffen werden.

Methoden

  • procedure LoadFromFile(const FileName: WideString) - laden einer Textdatei
  • procedure SaveToFile(const FileName: WideString) - Speichern in eine Textdatei
  • procedure Add(const S: WideString) - Anfügen einer Textzeile
  • procedure Clear - Löschen aller Zeilen
  • procedure Delete(Index: Integer) - löschen einer bestimmten Zeilennummer
  • procedure Insert(Index: Integer; const S: WideString) - Einfügen einer Zeile an eine bestimmte Stelle
  • procedure Exchange(Index1: Integer; Index2: Integer) - Tauschen zweier Zeilen
  • procedure Sort(Options: OleVariant) - Sortieren der Liste
  • procedure AddStrings(StringOrObject: Variant) - fügt mehrere Strings hinzu. Der Parameter kann ein mehrzeigiger String, ein Array oder eine Stringliste sein Verfügbar ab 4.3.74.6187
  • function toArray - gibt ein Varianten-Array mit den einzelnen Strings zurück - Verfügbar ab 4.3.74.6187
     

Eigenschaften

  • property Strings[Index: Integer]: WideString  - Zugriff auf eine bestimmte Zeilennummer
  • property Text: WideString - Alle Zeilen als zusammenhängender Text mit Zeilenumbrüchen
  • property Count: Integer readonly -  Anzahl der Zeilen

A. Beispiel

Anwendungsbeispiel der Kernfunktionen des Stringslisten-Objekts

'VBScript
dim s, SL

' Erzeugen eines neuen Stringlisten-Objekts
Set SL = Client.CreateObject("Eulanda.StringList")

' Anfügen von drei Textzeilen
SL.Add "Bananen"
SL.Add "Orangen"
SL.Add "Aprikose"

' Sortieren der Liste
SL.Sort

' Anzeige des sortierten Textes
MsgBox SL.Text 

'  Die dritte Zeile (! Index 2, da der Index mit 0 beginnt ) wird manipuliert
s = SL.Strings(2)
s = s & "-Saft"
SL.Strings(2) = s
' Alternativ kann man die letzte Aktion auch verkürzt als 
'   SL.Strings(2) = SL.Strings(2) & "-Saft" 
' schreiben

' Erneute Anzeige des Textes
MsgBox SL.Text 

' Speichern des Textes auf der lokalen Festplatte
SL.SaveToFile "C:\Obst.txt" 

' Freigabe des Objekts
Set SL = Nothing
 

B. Beispiel

Ermitteln der Zeilen in einem Text

function LineCount(s)
  with Client.CreateObject("eulanda.stringlist")
    .Text = s
    LineCount = .count
  end with
end function


msgbox cstr(linecount("Zeile 1" & vbCrLf & "Zeile 2"))