GOOGLE ADS

Donnerstag, 28. April 2022

String mit mehreren Trennzeichen in verschiedene Arrays in c# aufteilen

Ich habe also eine Textdatei in den Speicher kopiert, die wie folgt begrenzt ist:

"425.9856\n852.9658\n"

Dies ist eine lange Zeichenfolge mit insgesamt etwa 30.000 Einträgen. Was ich tun möchte, ist, zwei Arrays zu erstellen, eines für den Wert links vom Komma, eines für den Wert rechts vom Komma, und dann möchte ich an jedes Array die nächsten beiden durch Kommas getrennten Zeichenfolgen anhängen, die kommen danach".

Ich habe versucht, mit.Split aufzuteilen und zwei Begrenzungswerte zu übergeben, aber es wird offensichtlich nur ein Array mit allen Werten nacheinander erstellt. Wie zum Beispiel:

425 9856 852 9658

Wenn ich will:

Reihe1: 452 852

Reihe2: 9856 9658

Ist das sinnvoll? vielen Dank


Lösung des Problems

Da Sie aus einer Datei lesen, warum streamen Sie die Eingabe nicht Zeile für Zeile, anstatt alles auf einmal in den Speicher zu lesen?

using var reader = new StreamReader(filePath);
while (reader.ReadLine() is not null line)
{
// Each line is of the form '425,9856', so just split on the comma
var parts = line.Split(',');
firstList.Add(parts[0]);
secondList.Add(parts[1]);
}

Keine Kommentare:

Kommentar veröffentlichen

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...