[GELÖST] LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
[GELÖST] LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Hi,
ich habe Probleme mit LibreOffice 7.3 eine CSV-Datei mit 9181 Zeilen zu öffnen. Da kommt immer die Warnung "Die Daten konnten nicht vollständig geladen werden, da die maximale Anzahl von Zeichen pro Zelle überschritten wurde." und angezeigt werden dann nur 2851 Zeilen.
Was kann man dagegen machen?
Viele Grüße
SaxenPower
ich habe Probleme mit LibreOffice 7.3 eine CSV-Datei mit 9181 Zeilen zu öffnen. Da kommt immer die Warnung "Die Daten konnten nicht vollständig geladen werden, da die maximale Anzahl von Zeichen pro Zelle überschritten wurde." und angezeigt werden dann nur 2851 Zeilen.
Was kann man dagegen machen?
Viele Grüße
SaxenPower
Zuletzt geändert von Saxenpower am 18.11.2022 16:33:31, insgesamt 3-mal geändert.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Ich würde mir erstmal Zeile 2851 (und eventuell 2850 und 2852) anschauen, bzw diese drei Zeilen testweise als separate Datei aus der CVS herauskopieren und in Libreoffice importieren.
Eigentlich sollte das scheitern, weil irgendetwas als ein riesiger Zelleninhalt interpretiert wird.
Aus dem LO Forum (https://www.libreoffice-forum.de/viewtopic.php?t=16673)
Eigentlich sollte das scheitern, weil irgendetwas als ein riesiger Zelleninhalt interpretiert wird.
Aus dem LO Forum (https://www.libreoffice-forum.de/viewtopic.php?t=16673)
Die Zeichenkette einer Zelle darf 65.535 Zeichen beinhalten,...
Es geht um eine Zelle. Das sollte in der CVS Datei sichtbar sein.
gruß
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Hallo Micha,
vielen Dank für Dein Feedback und den Hinweis. Ich untersuche gerade die CSV-Datei. Vielleicht werde ich ja fündig.
vielen Dank für Dein Feedback und den Hinweis. Ich untersuche gerade die CSV-Datei. Vielleicht werde ich ja fündig.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Ich habe die Zeile gefunden. Eigentlich steht da im Verhältnis zu den Anderen nichts Besonderes drin.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Bei solchen Fehlern vermute ich erstmal einen Fehler wegen Windows-Zeilenenden (CRLF - schau mal mit file)
Falls es aber tatsächlich überlange Zellen gibt, sollte awk helfen können.
Edit: Zu spät.
Falls es aber tatsächlich überlange Zellen gibt, sollte awk helfen können.
Edit: Zu spät.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Dann lösche die Zeile doch einfach mal (in einer kopierten testversion derr CVS DAtei) und schau was beim import passiert. Das kann ja eigentlich nur eine inkompatible Formatierung sein, sonst müsste man das ja sehn.Saxenpower hat geschrieben:17.11.2022 19:18:28Ich habe die Zeile gefunden. Eigentlich steht da im Verhältnis zu den Anderen nichts Besonderes drin.
@Phineas
Wenn du awk erwähnst solltest du vielleich auch mitteilen was genau damit getan werden soll. Denn mit man awk brauch Otto normal user länger als andere mit nem informatikstudium ...
gruß
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
Re: [GELÖST] LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Ich dachte an das Herausfiltern aller Zellen, die das Limit überschreiten. Aber das Thema ist ja schon gelöst.
Mir scheint, dass Du die Kompliziertheit von awk sehr überschätzt. Damit kann man zwar fies lesbaren Code schreiben, aber eben auch schön strukturierten, leicht verständlichen Code.
Mir scheint, dass Du die Kompliziertheit von awk sehr überschätzt. Damit kann man zwar fies lesbaren Code schreiben, aber eben auch schön strukturierten, leicht verständlichen Code.
Re: [GELÖST] LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Ich denke Lösungen sind immer willkommen. Ich habe eben nur besagte Zeile herausgenommen, was aber keine echte Lösung ist, weil später das Ganze in eine MySQL-DB importiert werden soll. Fehler dürften da schädlich sein.Phineas hat geschrieben:17.11.2022 22:58:31Ich dachte an das Herausfiltern aller Zellen, die das Limit überschreiten. Aber das Thema ist ja schon gelöst.
Auch das interessiert mich. weil ich awk eben auch sehr schätze.Phineas hat geschrieben:17.11.2022 22:58:31Mir scheint, dass Du die Kompliziertheit von awk sehr überschätzt. Damit kann man zwar fies lesbaren Code schreiben, aber eben auch schön strukturierten, leicht verständlichen Code.
Also das hier ist für Alle gedacht, nicht nur für mich, weil ich gerade das Problem hatte.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Phineas hat geschrieben:17.11.2022 19:25:13Bei solchen Fehlern vermute ich erstmal einen Fehler wegen Windows-Zeilenenden (CRLF - schau mal mit file)
Falls es aber tatsächlich überlange Zellen gibt, sollte awk helfen können.
Edit: Zu spät.
Code: Alles auswählen
file kunde.csv
kunde.csv: ISO-8859 text, with very long lines
Also Dein awk-Vorschlag würde mich brennend interessieren. Mach es bitte nicht so spannend - wir alle hier im Forum partizipieren von Deinem Wissen und können es weitergeben.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Es gibt nichts, für das sich im Internet keine Lösung finden ließe:Saxenpower hat geschrieben:18.11.2022 09:06:07Also Dein awk-Vorschlag würde mich brennend interessieren.
https://stackoverflow.com/questions/167 ... line-tools
Code: Alles auswählen
awk '{print length}' input.txt
Code: Alles auswählen
awk '{i=i+1;print length" "i}' input.txt | sort -n
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Dankeschön für Deine Informationen. Nur leider hilft die Ausgabe auch nicht weiter.
Ich habe 9181 Datensätze:
Die Problemzeile liegt bei 2851 oder direkt danach, der Output in diesem Bereich sieht so aus:
Wie zu sehen ist, sind die Zeilen alle gleich lang, nämlich 409 Zeichen. Also ist diese Methode nicht sonderlich aussagekräftig.
Ich habe 9181 Datensätze:
Code: Alles auswählen
awk '{i=i+1;print length" "i}' kunde.csv | wc -l
awk: Kommandozeile:1: (FILENAME=kunde.csv FNR=4) Warnung: Es wurden unbekannte Multibyte-Daten gefunden. Ihre Daten entsprechen eventuell nicht der gesetzten Region
9181
Code: Alles auswählen
awk '{i=i+1;print length" "i}' kunde.csv | sort -n
...
409 2849
409 285
409 2850
409 2851
409 2852
409 2853
409 2854
...
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Das ist die Zeile 2851, die noch importiert wird:
und das die direkt (2852) danach (nicht mehr importiert)
Die ist sogar 3 Zeichen kürzer, was der awk-Befehl gar nicht zeigt.
Ich drücke es mal so aus, es wäre sehr dienlich, wenn man explizit sehen kann, was das Problem in der Zeile ist.
Code: Alles auswählen
awk '/primecompst./ {print $0}' kunde.csv | wc -m
410
Code: Alles auswählen
awk '/Japanproxy/ {print $0}' kunde.csv | wc -m
407
Ich drücke es mal so aus, es wäre sehr dienlich, wenn man explizit sehen kann, was das Problem in der Zeile ist.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Wenn ich jetzt die Zeile 2582 raus nehme und ganz ans Ende der CSV-Datei setze, dann macht LibreOffice beim CSV-Import absolut keine Probleme. Seltsam 

Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Schuss ins Blaue:Saxenpower hat geschrieben:18.11.2022 09:44:29Das ist die Zeile 2851, die noch importiert wird:und das die direkt (2852) danach (nicht mehr importiert)Code: Alles auswählen
awk '/primecompst./ {print $0}' kunde.csv | wc -m 410
Die ist sogar 3 Zeichen kürzer, was der awk-Befehl gar nicht zeigt.Code: Alles auswählen
awk '/Japanproxy/ {print $0}' kunde.csv | wc -m 407
Ich drücke es mal so aus, es wäre sehr dienlich, wenn man explizit sehen kann, was das Problem in der Zeile ist.
Kommt sonstwo in der CVS ein "./" vor?
Der Punkt "." vor dem slash "/" kommt mir komisch vor zumal er in der nächsten Zeile fehlt ... und (geraten) vielleicht in der Kombination "./" als "aktuelles Verzeichnis" interpretiert wird ... ja, dann müsste ein Leerzeichen davor sein ... was weiß ich was der import macht ... lösche testweise doch mal den Punkt raus ...
gruß
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Die Zeile würde ich mir jetzt mit hexdump ansehen.Saxenpower hat geschrieben:18.11.2022 10:05:13Wenn ich jetzt die Zeile 2582 raus nehme und ganz ans Ende der CSV-Datei setze, dann macht LibreOffice beim CSV-Import absolut keine Probleme. Seltsam![]()
Code: Alles auswählen
sed -n 2582p kunde.csv | hexdump -C
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Also vorhin hatte ich in LibreOffice das Problem in der betreffenden Zeile gefunden. Und zwar in den 5 letzten Spalten (W, X, Y, Z und AA):
In der Spalte W stehen Werte drin wie:
Das heißt in Spalte W stehen Semikolons und eine Zahl drin, die auf die Spalten X, Y, Z und AA hätten verteilt werden müssen - in AA müsste 0.00 stehen. Die sind alle leer.
Das Problem lag bei dem Lieferanten der Datei kunde.csv, sein Programm hatte das falsch von ISAM nach CSV importiert und jetzt kommt es, sein MS Excel kann diese defekte CSV-Datei problemlos öffnen. Der konnte nicht verstehen, dass ich nicht alle Datensätze sehen kann, schwört aber auf das MS-Gesocks.
Vielen Dank für die Antworten, haben sehr geholfen.
Viele Grüße
Saxenpower
In der Spalte W stehen Werte drin wie:
Code: Alles auswählen
falls nicht da, bei "Vins de; ; ; ; 0.00
Das Problem lag bei dem Lieferanten der Datei kunde.csv, sein Programm hatte das falsch von ISAM nach CSV importiert und jetzt kommt es, sein MS Excel kann diese defekte CSV-Datei problemlos öffnen. Der konnte nicht verstehen, dass ich nicht alle Datensätze sehen kann, schwört aber auf das MS-Gesocks.
Vielen Dank für die Antworten, haben sehr geholfen.
Viele Grüße
Saxenpower
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Prima. Die Gänsifüßchen leiten einen String ein. Der Parser sucht nach dem abschließenden Gänsifüßchen, findet bis zum Dateiende keinen und in der Folge wird der Eintrag zu lang.Saxenpower hat geschrieben:18.11.2022 16:32:47Code: Alles auswählen
falls nicht da, bei "Vins de; ; ; ; 0.00

Beim Import mußt du das Gänsefüßchen als Stringtrennzeichen deaktivieren.
Re: LibreOffice öffnet nicht alle Zeilen aus CSV-Dateien
Wohl eher die, die das Teil gefüttert hatten. Ich habe nur die CSV-Datei erhalten - 8 MB groß. Da nach solchen Eskapaden zu suchen, ist wahnwitzig.MSfree hat geschrieben:18.11.2022 16:47:10Beim Import mußt du das Gänsefüßchen als Stringtrennzeichen deaktivieren.