C# : Zeilen auslesen und in Textdatei schreiben

Code - (Computer, Programm, programmieren) Form - (Computer, Programm, programmieren)

2 Antworten

Als erstes ist die Definition der Methode "File.WriteAllText()" wie folgt:

public static void WriteAllText(
	string path,
	string contents
)

Du übergibst der Methode einen String und ein String-Array. Daher kommt dein Fehler.

Ein einfache Möglichkeit aus dem String-Array eine String zu machen, wäre folgende Funktion:

var datensatz = string.Join(" ", FertigeDatensätze);

Damit werden die einzelnen Strings mit einem Leerzeichen getrennt in die String-Variable geschrieben.

Strings sind unveränderbar (immutable). Das heißt, wenn du Strings mit "+" zusammenfügst, wird immer ein neuer String erzeugt. Bei der Codezeile

FertigeDatensätze[i] = "dn: cm=" + CNs[i] + ",ou=" + OUs[i] + ",ou=Extern,o=CLAAS\nobjectClass: Top\nobjectClass: claasUserExtension\nobjectClass: Person\nobjectClass: inetOrgPerson\nobjectClass: organizationalPerson\nobjectClass: ndsLoginProperties\nclaasUserType: extern\nmail: " + CNs[i] + "\ngivenName: " + Vornamen[i] + "\nfullName: " + Vornamen[i] + " " + Nachnamen[i] + "\nsn: " + Nachnamen[i] + "\nclaasApplRoleNames: cn=CDEX_EXTERN,ou=CDEX,ou=EBApps,o=CLAAS\nPassword: \n\n";

wird das 13 Mal (multipliziert mit der Länge des Arrays) durchgeführt. Das verringert die Performance des Programms. Du solltest die Klasse "StringBuilder" bzw. die Methode "string.Format()" verwenden.

Sry, aber der Code auf dem Bild ist zu klein, und das, was du da rein kopiert hast zu entziffern ist bisschen schwer....

Warum machst du das überhaupt mit Windows Forms?

MysticArms 
Fragesteller
 26.03.2015, 10:54

Womit sollte ich das sonst machen? Bin Anfänger im Programmieren, kann nur Konsole und Forms ein bisschen.

0