Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV eigentlich einen neuen Datensatz einleiten soll, aber eben nicht durch Quotas als String markiert ist, dann hast Du **kein definiertes ergo kein maschinell auswertbares CSV**, ergo genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere **Daten, die in einem vereinbarten Verfahren mit formal stabilen Ergebnissen** entstehen, kannst Du NICHTS garantieren. Selbst wenn Du es mit aktuellen Fehlern in den Dateien mit viel Mühe hinbekommst wird Dein Programm beim nächsten Mal wahrscheinlich crashen.
Kommuniziere beim Kunde ganz klar, dass Du mit diesem Datenmüll weder arbeiten kannst noch wirst - sonst darfst Du bei jedem seiner Datenlieferungen auf dem Teppich stehen und seinen Müll „für lau“ reparieren, was bei 15.000 Datensätzen Tage dauert und fehlerträchtig ist (Und wer haftet dafür?)
Wenn Deine Kunde einen neuen, sauberen Datenexport nicht mitmacht, dann ist der ein Spinner und Du solltest froh sein, ihn loszuwerden - denn der Kunde hat die Erfüllung unmöglich gemacht!
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen Datensatz einleiten soll, aber eben nicht durch Quotas als String markiert ist, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere **Daten, die in einem vereinbarten Verfahren mit formal stabilen Ergebnissen** entstehen, kannst Du NICHTS garantieren. Selbst wenn Du es mit aktuellen Fehlern in den Dateien mit viel Mühe hinbekommst wird Dein Programm beim nächsten Mal wahrscheinlich crashen.
Kommuniziere beim Kunde ganz klar, dass Du mit diesem Datenmüll weder arbeiten kannst noch wirst - sonst darfst Du bei jedem seiner Datenlieferungen auf dem Teppich stehen und seinen Müll „für lau“ reparieren, was bei 15.000 Datensätzen Tage dauert und fehlerträchtig ist (Und wer haftet dafür?)
Wenn Deine Kunde einen neuen, sauberen Datenexport nicht mitmacht, dann ist der ein Spinner und Du solltest froh sein, ihn loszuwerden.
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen Datensatz einleiten soll, aber eben nicht durch Quotas als String markiert ist, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere **Daten, die in einem vereinbarten Verfahren mit formal stabilen Ergebnissen** entstehen, kannst Du NICHTS garantieren. Selbst wenn Du es mit aktuellen Fehlern in den Dateien mit viel Mühe hinbekommst wird Dein Programm beim nächsten Mal wahrscheinlich crashen.
Kommuniziere beim Kunde ganz klar, dass Du mit diesem Datenmüll weder arbeiten kannst noch wirst - sonst darfst Du bei jedem seiner Datenlieferungen auf dem Teppich stehen und seinen Müll „für lau“ reparieren, was bei 15.000 Datensätzen Tage dauert und fehlerträchtig ist (Und wer haftet dafür?)
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen Datensatz einleiten soll, aber eben nicht durch Quotas als String markiert ist, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere **Daten, die in einem vereinbarten Verfahren mit formal stabilen Ergebnissen** entstehen, kannst Du NICHTS garantieren. Selbst wenn Du es mit aktuellen Fehlern in den Dateien mit viel Mühe hinbekommst wird Dein Programm beim nächsten Mal wahrscheinlich crashen.
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen Datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere **Daten, die in einem vereinbarten Verfahren mit formal stabilen Ergebnissen** entstehen, kannst Du NICHTS garantieren. Selbst wenn Du es mit aktuellen Fehlern in den Dateien mit viel Mühe hinbekommst wird Dein Programm beim nächsten Mal wahrscheinlich crashen.
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen Datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine „Daten“ sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen
oder
* mit Programmen wie `sed` oder `AWK` „über die Datei“
oder
Du lässt Dir einen Parser einfallen, mit dem Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein.
**Hint:** Der erneute und dieses Mal saubere Datenexport ist der billigste Weg. Auch für Deinen Kunde. Ohne saubere Daten, die in einem vereinbarten Verfahren mit stabilen Ergebnissen entstehen, kannst Du NICHTS garantieren.
**Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* **Bester und eigentlich einziger Weg:** Erneuter, sauberer Datenexport. (Du hast keine Daten sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen oder mit Programmen wie `sed` oder `AWK` „über die Datei“ und lässt Dir was einfallen, wie Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein. **Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* Erneuter, sauberer Datenexport. (Du hast keine Daten sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen oder mit Programmen wie `sed` oder `AWK` „über die Datei“ und lässt Dir was einfallen, wie Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück! Das braucht man nämlich sehr dringend, wenn man solchen Datenmüll hat.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein. **Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* Erneuter, sauberer Datenexport. (Du hast keine Daten sondern Datenmüll!)
oder
* Du gehst im Editor mit Suchen und Ersetzen oder mit Programmen wie `sed` oder `AWK` „über die Datei“ und lässt Dir was einfallen, wie Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst. Dabei viel Glück!
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein. **Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* Erneuter, sauberer Datenexport.
oder
* Du gehts mit Programmen wie `sed` oder `AWK` „über die Datei“ und lässt Dir was einfallen, wie Du aus
> ~~~CSV,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,GOOD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
~~~
machst.
**Weiter:** Das Komma in „189,00“ muss ein Punkt sein. **Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...
Import von fehlerhafter csv-Datei / Zeilenumbrüche in Feldern entfernen
bearbeitet von Raketenwilli> Bei diesen 3 Zeilen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
>
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
>
> 22634|"yyyyy 20 Liter
> Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
> die in meiner CSV so aussehen:
>
> ~~~
> 12345|zzzzz oooo ppppp||111
> 22633|yyyyy 10 Liter Ersetzt 198323||189,00
> 22634|"yyyyy 20 Liter Ersetzt 19abc4"||361,00
> ~~~
Wo sehen diese Zeilen so aus?
Wenn, wie oben, ein Zeilenumbruch innerhalb eines vermeintlichen Strings ist, der auch laut der Definition Deines CSV einen neuen datensatz einleiten soll, dann hast Du genau drei Möglichkeiten:
* Erneuter, sauberer Datenexport.
oder
Du gehts mit Programmen wie sed oder AWK über die Datei und lässt Dir was einfallen, wie Du aus
> ~~~csv,BAD
> 22633|yyyyy 10 Liter
> Ersetzt 198323||189,00
> ~~~
eben
~~~csv,BAD
22633|"yyyyy 10 Liter
Ersetzt 198323"||189,00
> ~~~
machst.
Weiter: Das Komma in „189,00“ muss ein Punkt sein. **Hint:** Exportiere Beträge im Cent-Format. In diesem gehören die auch in die Datenbank...