Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

CSV-Import: Trennzeichen ändern, Trennzeichen/Zeilenumbrüche schützen

Eingetragen von Samson1964 (51)
am 25.07.2012 - 17:20 Uhr in
  • Anfängerfragen
  • Drupal 7.x

Bei Feeds gibt es beim Trennzeichen nur die Wahl: ; , TAB

Wie kann ich das ändern, wenn ich stattdessen z.B. | oder % haben möchte?

Eine Unterfrage dazu: Wie maskiere ich , ; oder TAB im Datensatz, wenn dies kein Trennzeichen ist?

Wie maskiere ich Zeilenumbrüche im Import? Das Unix-LF dient ja als Trennzeichen zwischen den einzelnen Datensätzen. Doch wie kann ich LF im Datensatz selbst verwenden? \n oder \r\n - oder muß ich <br> schreiben?

Ergänzung: Problem 1 habe ich mit einem Patch der FeedsCSVParser.inc behoben. Bleiben die Probleme 2 und 3.

‹ Adminpasswort ändern [gelöst]Userprofile als Nodes ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Texte werden bei CSV mit "

Eingetragen von wla (9461)
am 26.07.2012 - 14:23 Uhr

Texte werden bei CSV mit " eingerahmt. Die innere Struktur bleibt dann bei Feeds vollständig erhalten inklusive der Zeilenumbrüche.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Aha, wieder eine neue

Eingetragen von Samson1964 (51)
am 26.07.2012 - 18:57 Uhr

Aha, wieder eine neue Erkenntnis. Das konnte ich bisher nirgends nachlesen.

Ich habe jetzt um alle meine Spalten " gemacht. Der Import brint aber nur das gleiche Ergebnis wie bisher. Von 340 Datensätzen werden 17 importiert und 28 bemängelt. Ergibt 45. Die fehlenden 295 Datensätze verstecken sich in den 17 importierten Datensätzen. Ich hatte erst die Vermutung Feeds würde die Zeilen nicht komplett einlesen (fgets hat ja eine 8kB-Schallmauer), aber trotz Patchings von fgets (auf 100.000 Byte) ändert sich nichts.

Deshalb hätte ich mal kurz und knapp eine genaue Beschreibung des erforderlichen CSV-Formats. Ich fasse mal meine bisherigen Erkenntnisse zusammen:

  • Dateiformat UTF-8, Zeilentrennzeichen Unix (LF)
  • Spaltentrennzeichen ; , TAB
  • 1. Zeile optional die Spaltennamen - ohne Begrenzer (")
  • Je weitere Zeile ein Datensatz
  • Spaltenbegrenzer: " davor und danach bei Textspalten

Dazu meine Fragen:

  • Spaltenbegrenzer auch bei Zahlen?
  • Muß das " innerhalb von Textspalten geschützt werden?
  • Müssen (Unix-)Zeilenumbrüche innerhalb von Textspalten entfernt/geschützt werden?
  • Wieviele Zeichen darf eine Zeile in der CSV-Datei enthalten? Feeds übernimmt die Voreinstellung 8 kB = 8.192 Zeichen. Also darf die Zeile nie länger sein, oder?
  • Anmelden oder Registrieren um Kommentare zu schreiben

Sieh mal in Deinen

Eingetragen von wla (9461)
am 26.07.2012 - 19:17 Uhr

Sieh mal in Deinen Briefkasten.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Briefkasten ist gut - links

Eingetragen von Samson1964 (51)
am 26.07.2012 - 20:34 Uhr

Briefkasten ist gut - links im Menü habe ich sowas nicht. Aber vielleicht hast Du ja eine Email geschickt.

Ich habe mir noch mal die Wikipedia durchgelesen und mein CSV-Exportskript entsprechend angepaßt. Jetzt läuft der Import einwandfrei durch - alle 340 Datensätze. Jetzt gehts an die Feinheiten, die ich noch nirgends dokumentiert gesehen habe: wie die einzelnen Spalten aussehen müssen - für Boolean, Taxonomy-Werte, Datum (na ja ist klar - Unixtime) usw.
Weiterhin gibt es ja noch das Bildproblem mit der falschen URL (Link): Drupal "erdreistet" sich einfach mein Bild in ein anderes Verzeichnis umzukopieren.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zeilenumbrüche innerhalb Textspalten

Eingetragen von green_eye55 (85)
am 12.12.2013 - 13:07 Uhr

Hallo Samson1964,

bei dem Versuch Datensätze per Feeds (CSV) zu Importieren sind exakt die gleichen Fragen aufgetreten, wie du sie oben formuliert hast. Diese konnte ich weitestgehend ausräumen. Eine Frage bleibt allerdings:

- Müssen (Unix-)Zeilenumbrüche innerhalb von Textspalten entfernt/geschützt werden?

Es will einfach nicht gelingen, Text samt Umbrüchen in ein Textfeld zu importieren. Die Zeichen "\n" werden stehts als reiner Text dargestellt, nicht aber als Umbruch innerhalt eines Textfeldes. Wie machst du das? Vielleicht hat aber auch jemand anderes noch einen Tip für mich.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Unix Umbrüche im HTML-Text

Eingetragen von wla (9461)
am 12.12.2013 - 14:47 Uhr

Unix Umbrüche im HTML-Text nutzen Dir gar nichts. Da braucht es stattdessen ein<br />. Das läßt sich aber mit dem Moduls feeds_tamper beim Import umsetzen.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich verweise auch auf Werners

Eingetragen von Samson1964 (51)
am 12.12.2013 - 14:56 Uhr

Ich verweise auch auf Werners Antwort auf mein Ausgangsproblem. Innerhalb einer Spalte, die durch " begrenzt wird, kann man ganz normale Zeilenumbrüche machen. Genauso hatte ich es später auch gemacht, nachdem ich mir das CSV-Format etwas genauer reingezogen hatte.

P.S. Ich hatte meine Drupalversuche nach einem halben Jahr abgebrochen und bin jetzt bei Contao seßhaft geworden. Es ist einfacher zu administrieren, sieht im Backend schicker aus und bringt von Hause aus mehr Funktionen im Kern mit. Contao hat allerdings so gut wie keine Import-Module.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für die beiden

Eingetragen von green_eye55 (85)
am 12.12.2013 - 15:37 Uhr

Danke für die beiden Antworten!

Vielleicht habe ich es auch etwas schlecht ausgedrück. Ich habe Datensätze importiert, die im Textfeld ein "\n" enthalten (war in einer SQL-Source-Datei so vorgegeben). Diese kann ich auch per "Suchen & Ersetzen" in <br /> umwandeln lassen. Das ist soweit kein Problem. Wenn ich nach dem Import den Text editieren will, werden mir die <br />'s im Textfeld mit ausgegeben, was das Ganze sehr unübersichtlich macht (kein WYSIWYG-Editor im Einsatz). Ich bin davon ausgegangen, das mir der Text im Edit-Modus gleich mit entsprechenden Umbrüchen angezeigt wird. So passiert es ja auch, wenn ich eine neue Node erstelle und hier die "Enter"-Taste verwende. Die Umbrüche werden in der Datenbank als "\n" gespeichert und im Edit-Modus im Textfeld nicht mit ausgegeben, sondern eben als Zeilenumbruch dargestellt. Nur für importierte Daten will das nicht funktionieren...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Dann solltest Du das Eingabe

Eingetragen von wla (9461)
am 12.12.2013 - 17:38 Uhr

Dann solltest Du das Eingabe Format bei diesem Feld auf Full-HTML stellen. Andernfalls wirft Drupal des <br /> vor der Ausgabe raus. Du kannst aber auch das <br /> als zulässiges Tag bei Filtered HTML eintragen.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ok, aber wo liegt der

Eingetragen von green_eye55 (85)
am 12.12.2013 - 18:37 Uhr

Ok, aber wo liegt der Unterschied zwischen

a) einem <br />, der importiert wurde und im Edit-Modus angezeigt wird und

b) einem per "Enter"-Taste gesetzten Umbruch beim Erstellen einer neuen Node, den ich nicht als<br /> sehe, sondern als Leerzeile bzw. Zeilenumbruch?

Bsp. zu a) Anzeige im Edit-Modus:
Mein Text<br />steht hier<br />und sieht gut aus.

Bsp. zu b) Anzeige im Edit-Modus:
Mein Text
steht hier
und sieht gut aus.

Dieses Verhalten ist unabhängig davon, ob ich Full HTML oder Filtered HTML einsetze.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Лучший сервис для продвижения сайта
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 5 Tagen 22 Stunden
  • Hey danke
    vor 6 Tagen 17 Stunden
  • Update: jetzt gibt's ein
    vor 1 Woche 11 Stunden
  • Hallo, im Prinzip habe ich
    vor 1 Woche 4 Tagen
  • Da scheint die Terminologie
    vor 1 Woche 5 Tagen
  • Kannst doch auch alles direkt
    vor 2 Wochen 2 Tagen
  • In der entsprechenden View
    vor 2 Wochen 2 Tagen
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 2 Tagen
  • gelöst
    vor 4 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250234
Registrierte User: 20450

Neue User:

  • Grantbor
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 9 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association