ich möchte eine Art FIFO-Puffer programmieren. Sprich, es wird eine Liste aus einer Systemvariablen ausgelesen, dann soll ein neuer Eintrag an den Anfang der Liste geschrieben und der älteste Eintrag vom Ende der Liste entfernt werden. Die Liste soll beliebige Trennzeichen enthalten können. Bevorzugt wird "\n" zur schöneren Darstellung der Listeneinträge. Schließlich soll die Liste wieder in die Systemvariable geschrieben werden. Zusätzlich soll auch noch bestimmt werden können, wie viele alte Listeneinträge vom Ende der Liste entfernt werden.
Das Lesen aus und das Schreiben in die Systemvariable ist kein Thema. Auch nicht das Schreiben neuer Einträge in die Liste. Mir geht es eher um das Entfernen der Listeneinträge. Hab mir auch schon Gedanken dazu gemacht und ein simples Testskript geschrieben.
Code: Alles auswählen
string list = "a\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn\no\np";
integer numberOfElements = 6;
integer cnt = 0;
string listNew = ""; string listElement;
foreach(listElement, list.Split("\n")){
if(cnt < numberOfElements){listNew = listNew#listElement#"\n";}
cnt = cnt + 1;
}
WriteLine(listNew);
!Ausgabe: a\nb\nc\nd\ne\nf\n
Gruß,
Thorsten