2016-11-17 3 views
-2

Ist es möglich, Daten aus einer Datei Spalte für Spalte zu lesen, anstatt Zeile für Zeile in C++ zu lesen? Ich habe Daten in einer Datei, die ich spaltenweise lesen und in einem Array in dieser Reihenfolge speichern soll. Jede Hilfe wäre willkommen. Vielen Dank!Spaltenweise Lesen von Daten aus einer Datei in C++?

+0

könnten Sie versuchen, den Begrenzer der "getline" -Funktion zu ändern, siehe z. [this] (http://stackoverflow.com/questions/19107439/c-getline-multiple-variable-types-using-comma-as-delimiter) –

+0

auch in Betracht ziehen, um zu sehen [wie man eine gute Fragen zu stellen stackoverflow] (http://stackoverflow.com/help/how-to-ask), um deine Fragen zu verbessern –

+1

Du denkst über den falschen Weg nach. Daten wie z. B. Text in einer Textdatei werden nicht durch Zeilen und Spalten dargestellt. Sie werden in der Regel aneinandergereiht und durch Steuerzeichen wie '\ s',' \ t', '\ r \ n' oder nur' \ n' getrennt . Was immer Sie zum Analysieren der Daten verwenden, sucht nach diesen Steuerzeichen und gibt die dazwischen liegenden Bytes zurück. Wenn es darum geht, Ihre Spalte nach Spaltendaten in ein Array zu zerlegen, müssen Sie sich nur mit Ihrer verschachtelten For-Schleifenstruktur herumschlagen. –

Antwort

0

Sie brauchen nicht Spalte für Spalte zu lesen, weil Sie ein Array Zeile für Zeile oder Spalte für Spalte füllen kann, tut es für das Array Rolle (als sei Jonny Henly in seinem Kommentar darauf hingewiesen):

Pseudo-Code :

"lesen Reihen":

data[size][size]; 
for (int row=0;row<size;row++) 
    for (int col=0;col<size;col++) 
     inputFile >> data[row][col]; 

"Spalten lesen": (dh data der Dateiinhalte umgesetzt wird)

data[size][size]; 
for (int col=0;col<size;col++) 
    for (int row=0;row<size;row++) 
     inputFile >> data[row][col]; 
+0

danke für die Antwort! –

Verwandte Themen