C ++ CSV -Datei lesen

C ++ CSV -Datei lesen

CSV ist die Kurzform von von Kommas getrennten Werten, die zum Speichern von Daten verwendet werden, die in tabellarischer Form mit der Erweiterung dargestellt werden.CSV ”. In diesem Fall repräsentiert jeder von Kommas getrennte Wert ein Datenfeld oder einen Datensatz, in dem jede Zeile einen einzelnen Datensatz gegen ein Objekt bezeichnet. C ++ unterstützt keine integrierte Bibliothek zum Lesen von CSV-Dateien, aber wir können sie lesen, wenn andere Textdateien gelesen werden. CSV -Dateien werden nach Zeile gelesen und jeder Wert eines Datensatzes wird durch das Trennzeichenkomma "" getrennt, während jede Zeile durch die neue Zeile "/n" getrennt wird. CSV -Dateien werden hauptsächlich verwendet, um Daten von Excel auf MySQL zu übertragen. Es ermöglicht Unternehmen, ein hohes Datenvolumen in eine komprimiertere Datenbank zu übertragen.

Syntax

Es gibt keine vordefinierte Syntax für das Lesen einer CSV.

In der gezeigten Abbildung repräsentiert jede Zeile die Aufzeichnung eines Mitarbeiter. Der Dateiname oben in der Abbildung ist „Mitarbeiter.CSV ”, wo sich„ Mitarbeiter “mit der Erweiterung befindet“.CSV ”.

Beispiel # 01:

In diesem Beispiel werden wir einen Code implementieren, in dem wir zuerst eine neue Datei erstellen und diese Datei dann lesen werden. Die Datei verfügt über die Daten eines Mitarbeiters, einschließlich des Namens des Mitarbeiter, der Abteilung und des Gehalts des Mitarbeiter. Lassen Sie uns nun zu unserem Code wechseln, nachdem wir unsere Header-Datei iOstream einbezogen haben, mit der der Compiler Eingabe-Output-Vorgänge durchführen kann. Geben Sie dann den FStream ein, mit dem wir mit Dateien arbeiten können, z. B. das Erstellen von Änderungen, Löschen usw. und die dritte Bibliothek, die wir eingeschlossen haben.

Wir gehen in unsere Hauptfunktion ein, in der wir eine Datei zum Speichern von Mitarbeiterdaten erstellen. Deklarieren wir zuerst die fstream -Variable „myFile“, mit der wir mit der Datei arbeiten werden. Im nächsten Schritt haben wir MyFile verwendet.Öffnen Sie, mit dem eine vorhandene Datei geöffnet oder eine neue Datei für diese Open () -Anweisung erstellt wird. Wir werden den Namen der Datei und das iOS :: Out -Argument übergeben, mit dem wir in die Datei schreiben können.

Nach dem Öffnen der Datei werden wir die Werte unter Verwendung der Variablen „MyFile“ an die Werte übergeben. Darin wird die Variable „MyFile“ verwendet, um die angegebenen Werte in die CSV -Datei zu schreiben. Wir haben die Daten des Mitarbeiters über „John Smith“, „Rick Adson“ und „Victoria William“ überschritten, um zu benennen, „John Smith“, „Rick Adson“ und „Victoria William“ zu benennen. Dagegen werden auch ihre Abteilung und ihre Gehälter verabschiedet. Nachdem wir alle Werte in die Datei geschrieben haben, schließen wir die Datei erfolgreich über das Schlüsselwort close ().

#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()

fstream myfile;
meine Datei.offen ("Mitarbeiter.CSV ", ios :: out);
meine Datei<<"Name"<<","<<"department"<<","<<"salary"<<"\n";
meine Datei<<"Jhone smith"<<","<<"Information technology"<<","<<"$122"<<"\n";
meine Datei<<"Jhone smith"<<","<<"Information technology"<<","<<"$122"<<"\n";
meine Datei<<"Jhone smith"<<","<<"Information technology"<<","<<"$122"<<"\n";
meine Datei.schließen();

Nachdem wir die CSV -Datei erstellt haben, werden wir uns nun zu unserem Lesevorgang bewegen, in dem wir zwei Variablen deklariert haben. Der erste ist die FStream -Variable, die die Dateiöffnungs- und Lesefunktionen verwaltet, und die zweite ist die Zeichenfolgenvariable, die für die Haltung des Werts verantwortlich ist, der von der Datei "MyFile2", die Zeichenfolgevariablen, aus der Datei analysiert wird In diesem Beispiel finden Sie "Details".

Nach der Erklärung der Variablen haben wir den Text einfach zum Erfolg der Dateierstellung angezeigt, um zu überprüfen, ob der Code funktioniert oder nicht. Verwenden Sie nun die neue FStream -Variable „MyFile2“, wir werden die Datei „Mitarbeiter“ öffnen.CSV ”unter Verwendung einer offenen Anweisung, an die wir den Dateinamen übergeben haben, den wir lesen möchten, und das„ iOS :: in: “-Keyword, das für das Öffnen der Datei als Lesemodus verantwortlich ist. Eine Sache, die Sie für die Lesemethode berücksichtigen sollten, können Sie die gleiche Fstream -Variable nicht verwenden oder definieren, da sie einen Fehler zeigt, den die Variable bereits vorhanden ist.

In unserem nächsten Schritt haben wir für die Schleife definiert, die viermal ausgeführt wird. Es startet von Index Null auf Index drei, was bedeutet, dass alle vier Zeilen gedruckt werden. Und jeder Wert wird durch das Trennzeichenkomma getrennt. In der für Schleife nennen wir eine "getline ()" -Funktion, die die von C ++ bereitgestellte integrierte Bibliothek ist, um die Werte aus der angegebenen Datei oder dem angegebenen Speicher zu erhalten. Zur GetLine -Funktion haben wir zwei Variablen die Variable "MyFile2" und die zweite "Details" übergeben. MyFile2 -Variable liest die in der Datei nacheinander gespeicherten Werte und übergibt sie an die Detail -Variable. Mit der Anweisung "Cout" zeigen wir den Wert an, der in der Variablen „Details“ gespeichert ist. Am Ende des Code wird der Nullwert zurückgegeben.

fstream myfile2;
String -Details;
Cout<<"\nCsv File created!";
Cout<<"\n\nDisplaying the content of CSV file\n\n";
MyFile2.offen ("Mitarbeiter.CSV ", iOS :: in);
für (int i = 0; i<=2; i++)

Getline (myFile2, Details);
Cout<
Rückkehr 0;

Wie im Snippet unten gezeigt, der „Mitarbeiter.Die CSV ”-Datei enthält 4 Zeilen. Die erste Zeile ist das Etikett, das die Felder definiert und den Namen, die Abteilung und das Gehalt des Mitarbeiters angezeigt. Jedes Feld in der Zeile wird unter Verwendung eines Kommas getrennt, wobei jeder Datensatz über einen neuen Zeilenbefehl „/n“ getrennt wird.

Lassen Sie uns die Ausgabe ermitteln, die wir nach dem Ausführen des Lesecode erhalten haben. Im folgenden Screenshot den Inhalt der Datei „Mitarbeiter“.CSV ”wird angezeigt. All the rows of the file are executed with the separation of values ​​using comma “,”.

Abschluss

In diesem Handbuch haben wir das Thema des Lesens einer CSV -Datei in C behandelt++. In C ++ gibt es keine integrierten Funktionen zum Lesen oder Schreiben von CSV. C ++ unterstützt die Arbeit mit allen Art von Füllsystem sowie CSV -Dateien. Dies ist der beste Weg, um eine große Menge an Daten nach einfachem Code zu lesen, den wir in unserem Beispiel ausgeführt haben.