Gutes Tools csv Dateien

CED999

Lieutenant
Registriert
Juni 2011
Beiträge
980
Hallo,

ich suche ein gutes Tools mit dem ich csv Dateien automatisch in Teile zerlegen und wieder als csv speichern lassen kann.

grüße
 
Origin ist mächtiger als Excel. Du legst aber auch mal ein paar Scheine dafür auf den Tisch.
 
Was ich meine ist:

ich habe öfters mal sehr große csvs. So 1-5 Millionen Zeilen. Die würde ich dann gerne in csvs mit vielleicht 1Mio Zeilen zerlegen udn speichern lassen, damit ich sie dann in Excel bearbeiten kann. Ab 1.048.000 Zeilen macht Excel nämlich schlapp.

Ich suche was kostenloses oder sehr billiges - nichts teures.

Grüße
 
Du suchst also ein Tool das per Prozedur läuft bei der genannten Datenmenge.

Mit Linux würde ich mir den SED einmal näher ansehen. Die Einarbeitung ist erforderlich in dieses sehr mächtigen Tool.
Eventuell auch das AWK-Tool, wobei auch hier die Einarbeitung aufwendig ist.
 
Ich suche schon was für Windows...
 
Du brauchst doch nur ein Tool, das die Datei nach einer bestimmten Anzahl Zeilen aufteilt, oder?
Ich weiß nicht ob es gut ist, aber gsplit kann das.
Ist etwas überladen das Programm, aber vielleicht läuft's ja anständig. Ansonsten unter linux mit split.

Hier gibt's noch ein Programm, das speziell dafür gemacht ist und einfacher zu bedienen sein sollte.
 
Zuletzt bearbeitet:
Du brauchst doch nur ein Tool, das die Datei nach einer bestimmten Anzahl Zeilen aufteilt, oder?

Exakt. Wie zuverlässig ist das Programm? Die Daten sind nicht ganz unwichtig da laufen Analysen dann drauf.
 
Ich kenne keins der Programme. Habe die nur gerade gefunden. Testen müsstest du schon selbst.

Wenn es zuverlässig sein soll, dann würde ich schon eher etwas gut getestetes wie split unter linux nehmen. Du kannst es auch mit MSYS unter Windows laufen lassen.
Trotzdem gilt es natürlich das zu testen, wenn es 100% funktionieren muss.

Es gibt ja immerhin unterschiedliche Zeilenumbrüche je nach System, daher muss man da ein wenig aufpassen.
Ich habe gerade mal in den split quellcode geschaut. Das kann nur Unix Zeilenumbrüche mit \n.

Es gibt noch ein Tool namens CSV Splitter. Das hat den Vorteil, dass es die Spaltennamen in jede Datei einfügen kann, falls das gewünscht ist.
 
Zuletzt bearbeitet:
awk, sed... Einfach ne Schleife laufen lassen über x Zeilen.
Code:
set max=1000000
set cur=0
set infile=.\eingabe.txt
set outfile=.\ausgabe.txt

copy nul %outfile%

for /f "delims=" %%x in ('%infile%') do (
  if %cur% lt %max% (
    echo %%x >> %outfile%
  )
  set /A cur=cur+1
)
Natürlich ungetestet...
 
Zuletzt bearbeitet:
Mit Notepad öffnen und teilen? Wenn du nur ein paar wenige Dateien hast ist das doch manuell immernoch gut machbar.
 
Wäre mal interessant wie die Performance sich unterscheidet. Ich würde mich nicht wundern, wenn die Batch Lösung eher langsam wäre, was bei Millionen von Zeilen schon was ausmachen könnte.

Sie teilt nur ein mal auf, wenn ich das richtig sehe?
Und du müsstest ab dem zweiten Aufruf von echo >> zum anfügen verwenden.
 
DjNDB schrieb:
Wäre mal interessant wie die Performance sich unterscheidet. Ich würde mich nicht wundern, wenn die Batch Lösung eher langsam wäre, was bei Millionen von Zeilen schon was ausmachen könnte.
Der Zeitvorteil, bevor man sich in sed, awk und sonstige Tools reingearbeitet hat, wiegt dies dann imho aus. ;) Bevor ich da passende Parameter und korrekte Lösungen erhalte, habe ich vielleicht schon 10 Dateien (auf einfachem, aber langsameren Wege) gesplittet. Wenn man das natürlich täglich mehrere Male benötigt, ist die Performance natürlich im Rampenlicht.
DjNDB schrieb:
Sie teilt nur ein mal auf, wenn ich das richtig sehe?
Ja, aber den Zähler kannst du innerhalb der Schleife ja wieder zurücksetzen.
Code:
if %cur% == 1000 (
  set cur=0
  set outfile=andere-datei.txt
  copy nul %outfile%
)
DjNDB schrieb:
Und du müsstest ab dem zweiten Aufruf von echo >> zum anfügen verwenden.
Sorry klar, habs ausgebessert.
 
Also habe mich jetzt ein bisschen umgeschaut und habe mich für das hier entschieden:

http://sourceforge.net/projects/splitcsv/reviews/

Kudoz an DjNDB, ist genau was ich gesucht habe. Die Zuverlässigkeit konnte ich allerdings noch nicht richtige überprüfen, da BeyondCompare beim Vergleich von csvs mit 7mio Zeilen anscheinend (zumindest auf meinem Notebook) nicht mehr will - taj gibt auch heutzutage wohl noch Grenzen ;)

Yuuri: Danke fürs coden nehme aber erstmal das tool, ist auch super schnell und bei genau 1 Einstellmöglichkeit (wieviele Zeilen pro Datei) gibts auch keine Einarbeitungszeit :)
 
Zurück
Oben