---
# System prepended metadata

title: Daten aus TXT auslesen - Im Array abspeichern. - Ins Array hinzufügen - sortieren und erneut die TXT schreiben

---

# Daten aus TXT auslesen - Im Array abspeichern. - Ins Array hinzufügen - sortieren und erneut die TXT schreiben

```htmlmixed=
<!-- TEST CSV -->
<html>
<body>
	
		<cfset sTermin1=StructNew()>
		<cfset sTermin1.Tag="1">
		<cfset sTermin1.Monat="8">
		<cfset sTermin1.Jahr="2019">
		<cfset sTermin1.Name="Frühstück">
		<cfset sTermin1.Text="Brotbüchse nicht vergessen">
	
		<cfset x = ArrayNew(1, false)>
		<cfset x.Append(sTermin1)>

		<cfdump var="#x#" label="aktuelle Termininfos: ">
		
	
<!--  TERMINE IN EIN ARRAY SPEICHERN  -->


<!-- zum hinzufügen **EINES** neuen termins sTermin1 an die richtige stelle -->
<!-- 1. Termine.txt lesen und in Array aus Strings umwandeln arrayTermine so wie der letzte dump ... list to array DELIMTER=\n (newline) -->
<!-- TERMINE aus einer TXT Datei IN EIN ARRAY AUSLESEN -->
		<cffile action="read" file="Termine.txt" variable="Termine">
        <cfset aTermine = ListToArray(Termine, "#Chr(10)##Chr(13)#")>						

		<cfdump var="#aTermine#" label="aTermine beinhaltet:">
		
<!-- 2. arrayTermine.Append(neuer_termin) -->
	    <cfset arTerminNew = ArrayNew(1)>
	    <cfset arTerminNew.Append(#NumberFormat(sTermin1.Jahr, "0000")#)>
	    <cfset arTerminNew.Append(#NumberFormat(sTermin1.Monat, "00")#)>
	    <cfset arTerminNew.Append(#NumberFormat(sTermin1.Tag,"00")#)>
	    <cfset arTerminNew.Append(#sTermin1.Name#)>
	    <cfset arTerminNew.Append(#sTermin1.Text#)>
        <cfset aTermine.Append(ArrayToList(arTerminNew, ";;"))>

<!-- 3. arrayTermine.Sort(Alfabethisch) -->
        <cfset aTermine.Sort("text")>
        <cfdump var="#aTermine#">

<!-- 4. Termine.txt mit sortiertem inhalt schreiben-->
        <!--cffile action="write" ...-->
			<cffile action="delete" file="Termine.txt">
			<cfloop array="#aTermine#" index="Row">
				<cffile action="append" mode="777" file="Termine.txt" output="#Row#" addNewLine="Yes">
			</cfloop>
<!-- 5. Ausgabe zum User neue Termine .. eigentlich nur einer ... -->
		<hr>
		<cfloop array="#x#" index="aktTermin">
    		<hr>
			 <cfoutput>
			  Folgender Termin wurde hinzugefügt: <br>
			  ----------------------------------- <br>
			  Jahr: #aktTermin.Jahr#<br>
			  Monat: #NumberFormat(aktTermin.Monat, "00")#<br>
			  Tag: #NumberFormat(aktTermin.Tag,"00")#<br>
			  Name: #aktTermin.Name#<br>
			  Text: #aktTermin.Text#<br>
			</cfoutput>
		</cfloop>
</body>
</html>

```