Home / LinuxUser / 2011 / 06 / CSV-Dateien bearbeiten mit dem Record Editor

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

AA_patronen_123rf-8710956_YuriyMerzlyakov.jpg

© Yuriy Merzlyakov, 123rf

Starre Struktur

CSV-Dateien bearbeiten mit dem Record Editor

17.05.2011 Beim Austausch von Tabellen dient das CSV-Format als kleinster gemeinsamer Nenner: Viele Programme speichern und importieren derartige Dateien. Komfortabel nachbearbeiten lassen sie sich per Texteditor – oder wesentlich komfortabler mit Record Editor.

Das CSV-Format speichert Tabellen in einer simplen Textdatei. In jeder Zeile liegt genau ein Datensatz, die Feldinhalte trennt jeweils ein Komma (Abbildung 1). Genau diese Konvention gab dem Format auch den Namen "Comma-separated Values" (CSV). Solche CSV-Dateien bieten sich vor allem für den Informationsaustausch zwischen verschiedenen Programmen an, etwa wenn Sie die Adressbuch-Anwendung wechseln oder alle Kontaktdaten auf ein anderes Gerät übernehmen möchten. Bei der Gelegenheit könnten Sie auch gleich noch ein paar Karteileichen entfernen und veraltete Telefonnummern korrigieren. Dazu reicht prinzipiell schon ein simpler Texteditor.

Abbildung 1

Abbildung 1: Eine typische CSV-Datei: Jede Zeile enthält eine Adresse, deren Komponenten jeweils ein Komma abtrennt. In der ersten Zeile stehen die Spaltenbeschriftungen.

Bei größeren Datenbeständen "verläuft" man sich jedoch schon einmal und zerstört versehentlich die gelegentlich doch etwas kryptischen Inhalte. Es genügt ein fehlendes Komma, und schon wird aus dem Herrn Maier ein Herr Markgrafenstr. mit der Faxnummer (0555) 65 43 21, unter jedoch eigentlich ein Handy wartet. Um das zu vermeiden, könnten Sie die CSV-Datei wieder in eine Tabellenkalkulation importieren, dort die Änderungen vornehmen und alles wieder ins CSV-Format exportieren. Einfacher und schneller geht es jedoch mit dem auf CSV-Dateien spezialisierten Record Editor [1].

Kaffeekränzchen: Record Editor installieren

Um den in Java geschriebenen Record Editor in Betrieb zu nehmen, benötigen Sie eine Java-Laufzeitumgebung (JRE), welche die meisten Distributionen aber von Haus aus mitbringen. Ob das auch das von Ihnen eingesetzte Derivat tut, prüfen Sie auf der Kommandozeile mithilfe des Kommandos java -version nach. Es sollte eine Meldung ähnlich der folgenden ausspucken:

$ java -version
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.4)
OpenJDK Server VM (build 17.0-b16, mixed mode)

Andernfalls gilt es vorab per Paketmanager eine aktuelle JRE nachzuinstallieren. Ist Java an Bord, holen Sie den Record Editor aus dem Internet – allerdings nicht von der leicht angestaubten Homepage, wo die Links unter Download Versions derzeit ins Leere führen. Die aktuelle Version versteckt sich stattdessen auf einer Sourceforge-Seite [2]. Wechseln Sie dort in das Verzeichnis mit der höchsten Versionsnummer – zu Redaktionsschluss aktuell war Record Editor 0.69.1, den Sie auch auf der Heft-DVD finden. Von den angebotenen Archiven benötigen Sie als Linux-Anwender die Datei RecordEdit_Installer_for_HSQLDB_Version.jar.zip, die Sie nach dem Herunterladen auf die Festplatte entpacken. Im dabei entstandenen Verzeichnis HsqlDB rufen Sie in einem Terminal-Fenster folgenden Befehl auf:

$ java -jar RecordEdit_Installer_for_HSQLDB_0.69.1.jar

Es erscheint jetzt ein kleiner Installationsassistent, in dem Sie auf Next klicken, dann die GPLv3-Lizenz akzeptieren und wieder Next bemühen. Das vorgeschlagene Installationsverzeichnis können Sie für gewöhnlich einfach übernehmen, womit Record Editor in Ihrem Home-Verzeichnis landet. Via Next und OK startet die eigentliche Einrichtung. Nach einem weiteren Klick auf Next bietet der Installer an, Record Editor ins Startmenü zu integrieren und passende Symbole auf dem Desktop anzulegen. Zumindest eine der beiden Möglichkeiten sollten Sie annehmen, da Record Editor aus mehreren Komponenten besteht und sich diese so später einfacher starten lassen. Drei Mal Next und einmal Done schließen die Installation ab. Melden Sie sich jetzt einmal ab und wieder an, was das Startmenü auf den aktuellen Stand bringt.

Dosenöffner

Record Editor bringt eine eigene kleine Datenbank mit, die während des Betriebs im Hintergrund laufen muss. Um sie zu starten, wählen Sie aus dem Startmenü den Punkt RecordEditor - Start Database Server. Alternativ wechseln Sie in einem Terminal ins Record-Editor-Verzeichnis und rufen dort im Ordner lib das Skript StartServer.sh auf. Sobald die Datenbank im Hintergrund läuft, starten Sie Record Editor selbst. Er versteckt sich im Startmenü hinter dem Full Editor. Wollen Sie ihn in einem Terminal aktivieren, wechseln Sie dazu in den Ordner lib des Record-Editor-Verzeichnisses und rufen dort das Skript runFullEditor.sh auf.

Es erscheint das Hauptfenster aus Abbildung 2. Die darin enthaltenen Fenster können Sie unabhängig voneinander verkleinern, vergrößern und schließen, sie bleiben aber grundsätzlich immer innerhalb des Hauptfensters. Im Programm Log gibt Record Editor Status- und Fehlermeldungen aus. Um eine CSV-Datei zu öffnen, wenden Sie sich dem Unterfenster Open File zu. Via Choose File wählen Sie zunächst die entsprechende Datei auf der Festplatte und stellen dann unter System den Punkt CSV ein. In der Ausklappliste Record Layout möchte Record Editor jetzt noch wissen, welchen Aufbau die Datei aufweist.

Abbildung 2

Abbildung 2: Das Hauptfenster von Record Editor nach dem ersten Start.

Bauhaus

Sofern alle Daten per Komma getrennt sind und in der ersten Zeile der CSV-Datei die Spaltenbeschriftungen stecken (wie in Abbildung 1 Name, Straße, Ort und so weiter), ist der Punkt Comma Delimited, names on the first line genau der Richtige. Verwendet die Datei anstelle der Kommata Tabulatoren, wählen Sie stattdessen Tab Delimited, names on the first line. Weicht sie hingegen von diesen beiden Standardmöglichkeiten ab, stellen Sie Generic CSV - enter details ein. In diesem Fall müssen Sie gleich noch genauere Angaben zum Aufbau der Datei machen (siehe Kasten "(Nicht-)Standard CSV").

TIPP

Öffnen Sie im Zweifelsfall die CSV-Datei mit einem Texteditor, um die Existenz einer Header-Zeile sowie die verwendeten Trennzeichen herauszufinden.

(Nicht-)Standard CSV

Bei CSV handelt es sich mehr um eine schlechte Angewohnheit als um einen Standard, wenn auch RFC 4180 [4] ein mögliches Format beschreibt. Die Erfassung von kommaseparierten Daten stammt noch aus den Zeiten Fortran-befeuerter Großrechner: Schon 1967 unterstützte beispielsweise IBMs OS/360-Mainframe-Betriebssystem CSV. Ein klassisches Beispiel einer CSV-Datei liefert übrigens auch Linux in Form der /etc/passwd mit, in der Doppelpunkte die Werte separieren.

Die in CSV-Dateien zu verwendende Zeichenkodierung ist nicht normiert, jedoch gilt 7-Bit-ASCII als der kleinste gemeinsame Nenner. Der erste Datensatz kann ein Kopfdatensatz sein, der die Spaltennamen definiert. Das zum Trennen der einzelnen Datensätze genutzte Zeichen entspricht dem Zeilenumbruch-Zeichen des Betriebssystems – bei Windows sind es also tatsächlich zwei Zeichen (CR/LF). Als Zeichen zur Trennung von Datenfeldern/Spalten schlägt schon der Formatname das Komma vor, es können dazu jedoch auch Semikolons, Doppelpunkte, Tabulatoren oder Leerzeichen zum Einsatz kommen. Daneben gibt es auch noch eine Spielart mit fester Feldbreite. Um den Trenner auch innerhalb der Daten nutzen zu können (etwa Kommas in Dezimalwerten), gibt es ein Feldbegrenzerzeichen, normalerweise das Anführungszeichen. Kommt der Feldbegrenzer selbst in den Daten vor, muss er als Begrenzer verdoppelt werden.

Nach einem Klick auf Edit erscheint die Tabelle mit allen Datensätzen wie in Abbildung 3. Sofern Sie Generic CSV gewählt haben, präsentiert Ihnen Record Editor zuvor noch das Fenster aus Abbildung 4. Hier stellen Sie zunächst unter Field Separator ein, welches Zeichen die einzelnen Daten in einer Zeile trennt – oft dient dazu statt eines Kommas oder Tabulators ein Strichpunkt. In der Ausklappliste bietet Record Editor die verbreitetsten Trennzeichen an. Sie dürfen aber auch ein beliebiges eigenes in das Eingabefeld rechts daneben eintippen. Ob Sie mit Ihrer Wahl richtig liegen, können Sie im unteren Bereich anhand der eingeblendeten Ergebnisvorschau entscheiden.

Abbildung 3

Abbildung 3: Das im Record Editor geöffnete Adressbuch aus Abbildung 1.

Abbildung 4

Abbildung 4: Bei CSV-Dateien, die vom Standard abweichen, müssen Sie den Aufbau selbst vorgeben. Die hier getroffenen Einstellungen führen zur Tabelle im unteren Bereich.

Tabellenkalkulationen verpacken die Inhalte einer Zelle gerne noch in Anführungszeichen. Sofern dies bei Ihrer CSV-Datei der Fall ist, wählen Sie unter Quote Character das dabei verwendete Anführungszeichen. Enthält die erste Zeile wie in Abbildung 1 die Bezeichnungen der Tabellenspalten beziehungsweise Datenfelder, haken Sie noch Fields on First Line ab. Sind alle Angaben korrekt, öffnet ein Klick auf Go die Tabelle in der endgültigen Ansicht aus Abbildung 4.

Über die Symbole rechts oben manipulieren Sie die Tabelle. Das schwarze X ganz rechts löscht beispielsweise den oder die gerade markierten Zeilen, das weiße Blatt legt einen neuen Datensatz an. Mehrere Zeilen wählen Sie bei gedrückter [Strg]-Taste aus. Wenn Sie mit dem Zeiger zwischen die Tabellenspalten fahren und dann die linke Maustaste gedrückt halten, können Sie mit der Maus die Spaltenbreite verändern.

Um ein Zelle zu bearbeiten, klicken Sie sie doppelt darauf und korrigieren den Inhalt. Erscheint Ihnen das zu fummelig, klicken Sie stattdessen auf das leere graue Rechteck ganz links in der Zeile des Datensatzes. Es öffnet sich dann das Fenster aus Abbildung 5. Es zeigt nur die Zeile beziehungsweise den darin gespeicherten Datensatz an. Auch hier genügt ein Doppelklick in ein Feld, um es zu ändern. Mit den großen Pfeilen am unteren Rand blättern Sie zwischen den einzelnen Datensätzen respektive Tabellenzeilen hin- und her.

Abbildung 5

Abbildung 5: In dieser alternativen Ansicht zeigt Record Editor immer nur einen Datensatz beziehungsweise eine Tabellenzeile an.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

3829 Hits
Wertung: 149 Punkte (7 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...