Wie man eine CSV-Datei übersetzt

OpenL Team 1/9/2026

TABLE OF CONTENTS

CSV sieht einfach aus, aber die Übersetzung kann schnell schiefgehen: Spalten verschieben sich, Anführungszeichen brechen, nicht-lateinische Zeichen werden unleserlich oder IDs werden in etwas Unbrauchbares „übersetzt“. Dieser Leitfaden zeigt einen sicheren, praxisnahen Workflow, um eine CSV-Datei zu übersetzen und dabei die Struktur zu erhalten, sowie eine QA-Checkliste und Lösungen für häufige Probleme.

Wenn Sie die einfachste Option möchten, verwenden Sie einen CSV-bewussten Übersetzer (Methode 1) anstelle des Kopierens von CSV-Text in einen generischen Textübersetzer.

Bevor Sie die übersetzte Datei importieren, führen Sie die QA-Checkliste in diesem Leitfaden aus, um Spalten-/Kodierungsprobleme frühzeitig zu erkennen.

Was macht die Übersetzung von CSV schwierig

CSV ist reiner Text, enthält aber Strukturregeln:

  • Trennzeichen: normalerweise Komma (,), manchmal Semikolon (;) in einigen Regionen.
  • Anführungszeichen: Textwerte können in doppelte Anführungszeichen (") eingeschlossen sein. Anführungszeichen innerhalb von Werten müssen maskiert werden (häufig "").
  • Zeilenumbrüche innerhalb von Zellen: erlaubt, aber nur, wenn die Zelle korrekt in Anführungszeichen steht.
  • Kodierung: Ihre Datei könnte UTF-8, UTF-8 mit BOM oder eine ältere Kodierung sein.
  • Gemischte Datentypen: Zahlen, Datumsangaben, SKUs, IDs, URLs und Platzhalter müssen oft unverändert bleiben.

Übersetzungstools, die CSV als „nur Text“ behandeln, können versehentlich Strukturzeichen (Trennzeichen/Anführungszeichen/Zeilenumbrüche) ändern oder Datentypen (Datum/Zahlen) umwandeln, was zu fehlerhaften Importen führt.

Bevor Sie beginnen

Diese schnellen Schritte verhindern die meisten Fehler bei der CSV-Übersetzung:

  1. Erstellen Sie eine Sicherungskopie

    • Speichern Sie file.csvfile.original.csv.
    • Wenn die CSV Kundendaten enthält, entfernen oder anonymisieren Sie sensible Felder, bevor Sie sie irgendwo hochladen.
  2. Identifizieren Sie Felder, die nicht übersetzt werden dürfen Lassen Sie diese unverändert:

    • IDs, Schlüssel, SKUs, Bestellnummern
    • URLs, E-Mails, Dateipfade
    • Platzhalter und Variablen ({name}, {{amount}}, %s, :count)
    • Tags, Enum-Werte, interne Statuscodes (PAID, REFUNDED)
    • Jedes Feld, das von Code verwendet wird (API-Schlüssel, JSON-Blobs, HTML-Snippets)
    • Wenn Sie unsicher sind, siehe: /what-not-to-translate
  3. Bestätigen Sie Trennzeichen, Anführungsregeln und Zeilenenden

    • Wenn Sie die CSV öffnen und sie „wie eine einzige Spalte aussieht“, ist das Trennzeichen wahrscheinlich falsch.
    • Typische CSV-Dateien verwenden das Trennzeichen , und Anführungszeichen " (siehe RFC 4180: https://www.rfc-editor.org/rfc/rfc4180).
  4. Bestätigen Sie die Kodierung

    • Bevorzugen Sie UTF‑8 für mehrsprachige Inhalte.
    • Wenn Sie die übersetzte CSV in Excel unter Windows öffnen möchten, benötigen Sie möglicherweise UTF‑8 mit BOM, um fehlerhafte Zeichen zu vermeiden.
    • Hintergrund zu BOM: https://unicode.org/faq/utf_bom.html
  5. Optional, aber empfohlen: Fügen Sie eine stabile row_id hinzu Für CSVs, die später erneut importiert oder abgeglichen werden, fügen Sie eine eindeutige Schlüsselspalte (z. B. row_id) hinzu, damit Sie überprüfen können, ob die Zeilen nicht neu angeordnet wurden.

Methode 1 — CSV-bewusste Online-Übersetzer (empfohlen)

CSV-bewusste Übersetzer behandeln CSV als strukturierte Daten, nicht „nur als Text“, und sind daher weniger anfällig dafür, Trennzeichen, Anführungen oder Zeilen-/Spaltenlayout zu beschädigen. Führen Sie immer die QA-Checkliste durch, bevor Sie importieren.

Neutraler Optionsvergleich

OptionStärkenKompromisseAm besten geeignet für
OpenL CSV Translator OnlineFür CSV-Struktur entwickelt; schneller Upload/DownloadUpload-basierter Workflow; nicht ideal für sensible DatenSchnelle, zuverlässige CSV-Entwürfe
DeepL / Google Cloud / AWS Translate (API)Automatisierbar; gute Qualität; geeignet für Batch-ProzesseErfordert technische Umsetzung + sorgfältige CSV-VerarbeitungTeams, die viele Dateien übersetzen
CAT-Tools (Smartling, Lokalise, Phrase, etc.)Terminologie/QA, ZusammenarbeitMehr Einrichtung + KostenProdukt-/UI-Lokalisierung im großen Maßstab
Tabellenformeln (Sheets/Excel)Keine zusätzliche Software notwendigCSV kann leicht automatisch formatiert oder beschädigt werdenNur kleine, risikoarme Dateien

Grenzen und Hinweise

  • Laden Sie keine sensiblen Daten hoch, die Sie nicht teilen dürfen. Exportieren Sie bei Bedarf zuerst eine bereinigte CSV.
  • Wenn Ihr System bestimmte Kopfzeilennamen benötigt, übersetzen Sie die Kopfzeile nicht.
  • Führen Sie immer die QA-Checkliste durch, bevor Sie die übersetzte CSV importieren.
  • Wenn Sie ein Online-Tool verwenden, prüfen Sie auf der Tool-Seite die Upload-Limits und unterstützten Formate.

Schritt-für-Schritt-Anleitung

  1. Öffnen Sie das Tool

  2. Wählen Sie die Sprachen aus

    • Wählen Sie Ihre Zielsprachen.
  3. Laden Sie Ihre CSV hoch

    • Laden Sie Ihre .csv-Datei hoch oder ziehen Sie sie per Drag-and-Drop hinein.
    • Wenn Ihre CSV mehrere Textspalten enthält, übersetzt der Übersetzer den Inhalt und behält dabei Trennzeichen und Anführungszeichen sicher bei.
  4. Laden Sie die übersetzte CSV herunter

    • Speichern Sie sie mit einem eindeutigen Namen wie products_es.csv.

Best Practices für bessere Ergebnisse

  • Übersetzen Sie nur benutzerorientierte Spalten: Produkttitel, Beschreibungen, UI-Strings, kundenorientierte Hinweise.
  • Halten Sie Codes stabil: Übersetzen Sie nicht status, type, sku, category_id, url, handle.

Methode 2 — Google Sheets oder Excel

Dieser Workflow kann funktionieren, aber es ist einfacher, versehentlich das Format, die Trennzeichen oder die Typen zu verändern.

Google Sheets (kleine Dateien)

  1. Importieren Sie die CSV

    • Google Sheets → Datei → Importieren → Hochladen.
    • Wenn Ihre Daten in einer Spalte erscheinen, wählen Sie das richtige Trennzeichen (Komma vs. Semikolon).
  2. Schützen Sie „nicht zu übersetzende“ Spalten

    • Formatieren Sie ID-Spalten zuerst als Nur Text (z. B. SKU, Bestellnummer), um zu verhindern, dass 00123123 wird.
  3. Übersetzen Sie nur die Zielspalten

    • Verwenden Sie =GOOGLETRANSLATE(A2,"en","es") in einer neuen Spalte, dann Kopieren → Speziell einfügen → Nur Werte.
    • Führen Sie keine Übersetzungsformeln in Spalten mit URLs, Platzhaltern, Codes oder Formeln aus.
  4. Exportieren

    • Datei → Herunterladen → Kommagetrennte Werte (.csv) (Google Sheets exportiert UTF‑8).

Excel (Windows) — wie man UTF‑8 korrekt importiert und exportiert

Excel ist der Ort, an dem Kodierungsfehler am häufigsten auftreten. Verwenden Sie diese Schritte, um Zeichenwirrwarr und Trennzeichenprobleme zu vermeiden.

A) CSV importieren, ohne Zeichen zu verstümmeln

  1. Daten → Aus Text/CSV
  2. Im Import-Dialog:
    • Dateiursprung / Kodierung: Wählen Sie 65001: Unicode (UTF‑8) (die Bezeichnung variiert je nach Version)
    • Trennzeichen: Komma (,) oder Semikolon (;), passend zu Ihrer Datei
  3. Klicken Sie auf Laden (oder Daten transformieren, wenn Sie ID-Spalten auf Text erzwingen müssen)

B) Exportieren als UTF‑8 (und wann BOM verwendet wird)

  1. Datei → Speichern unter
  2. Für Dateityp speichern unter wählen Sie:
    • CSV UTF‑8 (durch Kommas getrennt) (*.csv) (empfohlen für mehrsprachigen Text)
    • Wenn Ihr nachgelagertes System BOM ablehnt, exportieren Sie UTF‑8 ohne BOM mit einem Skript (siehe „Stapelverarbeitung“) oder speichern Sie mit einem Code-Editor erneut ab.

Häufige Fallstricke

  • Automatische Formatierung: Tabellenkalkulationen können IDs wie 00123 in 123 umwandeln.
  • Datumsumwandlung: 2026-01-09 kann unterschiedlich angezeigt und inkonsistent exportiert werden.
  • Trennzeichenwechsel: Exporte können je nach Ländereinstellung auf ; wechseln.

Wenn Sie diese Methode verwenden, ist der QA-Abschnitt unten obligatorisch.

Erweiterter Workflow — Übersetzungstabelle

Wenn Ihre CSV eine Mischung aus „übersetzen“ und „nicht übersetzen“-Daten ist, erstellen Sie eine separate Übersetzungstabelle, damit die Übersetzung nie sensible Felder berührt.

Schritt 1: Übersetzungstabelle erstellen

Erstellen Sie eine neue CSV (oder ein neues Tabellenblatt) wie:

row_idfieldsource_textcontexttranslated_text
101product_titleWireless MouseE-commerce product titleKabellose Maus
101product_descSilent clicks, 2-year batteryShort descriptionGeräuschlose Klicks, 2 Jahre Batterielaufzeit
102product_titleUSB-C ChargerE-commerce product titleUSB-C Ladegerät
102product_descFast charging for phones and tabletsShort descriptionSchnelles Laden für Smartphones und Tablets
103product_titleStainless Steel Water BottleProduct titleTrinkflasche aus Edelstahl
103product_descBPA-free, keeps drinks cold 24hShort descriptionBPA-frei, hält Getränke 24 Stunden kalt
104product_titleNoise-Canceling HeadphonesProduct titleGeräuschunterdrückende Kopfhörer
104product_descOver-ear, Bluetooth 5.3Short descriptionOver-Ear, Bluetooth 5.3

Schritt 2: Übersetzen Sie nur source_text

Übersetzen Sie die Spalte source_text mit Ihrem gewählten Workflow und tragen Sie das Ergebnis in translated_text ein. (Ein CSV-kompatibler Online-Übersetzer ist meist sicherer als Tabellenkalkulationen.)

Schritt 3: Übersetzungen zurückführen

Verbinden Sie nach row_id + field und schreiben Sie den übersetzten Text zurück in Ihren Originaldatensatz. So wird sichergestellt, dass IDs, Preise und Systemfelder nie übersetzt werden.

Beispiel (Python + pandas)

import pandas as pd

# Originaldaten (Typen stabil halten; IDs als Strings behandeln)
orig = pd.read_csv("products.csv", dtype=str, keep_default_na=False)

# Übersetzungstabelle nach der Übersetzung
tt = pd.read_csv("translation_table_es.csv", dtype=str, keep_default_na=False)

# Umwandlung in ein breites Format (eine Zeile pro row_id)
wide = (
  tt.pivot(index="row_id", columns="field", values="translated_text")
  .add_suffix("__translated")
  .reset_index()
)

merged = orig.merge(wide, on="row_id", how="left")

# Zurückschreiben (Beispielfelder)
merged["product_title"] = merged["product_title__translated"].where(
  merged["product_title__translated"].ne(""), merged["product_title"]
)
merged["product_desc"] = merged["product_desc__translated"].where(
  merged["product_desc__translated"].ne(""), merged["product_desc"]
)

merged.drop(columns=[c for c in merged.columns if c.endswith(“__translated”)], inplace=True) merged.to_csv(“products_es.csv”, index=False, encoding=“utf-8-sig”)


#### Beispiel (SQL Join/Update-Muster)

```sql
-- translation_table(row_id, field, translated_text)
-- products(row_id, product_title, product_desc, ...)

UPDATE products p
SET product_title = t.translated_text
FROM translation_table t
WHERE p.row_id = t.row_id
  AND t.field = 'product_title'
  AND t.translated_text IS NOT NULL
  AND t.translated_text <> '';

Batch-Verarbeitung (mehrere CSV-Dateien)

Wenn Sie viele CSV-Dateien übersetzen müssen, vermeiden Sie manuelle Tabellenkalkulationsschritte und verwenden Sie eine wiederholbare Pipeline:

  1. Eingaben standardisieren

    • Normalisieren Sie auf UTF‑8 (oder UTF‑8 mit BOM, falls Ihr Importer dies benötigt).
    • Stellen Sie sicher, dass jede Datei einen stabilen Schlüssel (row_id / id) zur Zuordnung hat.
  2. Übersetzungstabellen pro Datei generieren

    • Extrahieren Sie nur übersetzbare Felder in translation_table_<file>.csv.
    • Fügen Sie eine source_file-Spalte hinzu, wenn Sie eine kombinierte Tabelle für alle Dateien bevorzugen.
  3. Tabellen übersetzen

    • Verwenden Sie einen API-Workflow oder ein CSV-fähiges Tool, Datei für Datei.
  4. Ergebnisse zurückführen + exportieren

    • Zuordnung nach row_id + field (und source_file, falls verwendet).
    • Exportieren Sie mit der Kodierung, die Ihr nachgelagertes System erwartet.

Minimaler Starter-Loop (verarbeitet viele Dateien konsistent):

for f in ./input/*.csv; do
  base="$(basename "$f" .csv)"
  # 1) Extrahiere Übersetzungstabelle (implementieren Sie dies entsprechend Ihrem Schema)
  # 2) Übersetze translation_table_${base}.csv -> translation_table_${base}_translated.csv
  # 3) Fügen Sie zusammen und exportieren Sie ${base}_translated.csv
  echo "Processed: $base"
done

QA-Checkliste nach der Übersetzung

Nachdem Sie die übersetzte CSV heruntergeladen haben, führen Sie diese Prüfungen durch, bevor Sie importieren:

Schnellüberprüfungen

  • Zeilenanzahl vergleichen (macOS/Linux): wc -l file.original.csv file.translated.csv
  • Überprüfen Sie die Konsistenz der Trennzeichen, indem Sie die Datei in einem einfachen Texteditor öffnen und bestätigen, dass die Separatoren gleich aussehen.
  • Optional: Überprüfen Sie die Konsistenz der Spaltenanzahl mit Python:
python -c "import csv,sys; p=sys.argv[1]; r=list(csv.reader(open(p,newline='',encoding='utf-8'))); print('rows',len(r),'max_cols',max(len(x) for x in r))" file.translated.csv

Wenn Sie einen Unicode-Decode-Fehler erhalten, konvertieren Sie die CSV zuerst in UTF-8 oder versuchen Sie utf-8-sig:

python -c "import csv,sys; p=sys.argv[1]; r=list(csv.reader(open(p,newline='',encoding='utf-8-sig'))); print('rows',len(r),'max_cols',max(len(x) for x in r))" file.translated.csv

Strukturprüfungen

  • Zeilenanzahl unverändert: gleiche Anzahl an Datenzeilen wie im Original.
  • Spaltenanzahl unverändert: jede Zeile hat die gleiche Anzahl an Spalten.
  • Trennzeichen unverändert: Komma vs. Semikolon ist mit Ihrem Importer konsistent.
  • Anführungszeichen gültig: Felder mit Kommas/Zeilenumbrüchen bleiben korrekt in Anführungszeichen gesetzt.

Datenintegritätsprüfungen

  • IDs und Schlüssel unverändert: vergleichen Sie sku, id, row_id, handle.
  • URLs/E-Mails unverändert: keine hinzugefügten Leerzeichen, keine übersetzten Domains.
  • Zahlen erhalten: Preise, Mengen, Dezimalzahlen bleiben gleich.
  • Platzhalter erhalten: {name}, {{count}}, %s, :value bleiben unverändert.

Qualitätsprüfungen der Übersetzung

  • Terminologie konsistent: Wichtige Produktbegriffe werden in allen Zeilen gleich übersetzt.
  • Längenbeschränkungen eingehalten: UI-Beschriftungen sind nicht zu lang (wichtig für Apps).
  • Keine gemischten Sprachreste: Suchen Sie nach häufigen Quellwörtern, die übersetzt werden sollten.

Fehlerbehebung bei häufigen CSV-Übersetzungsproblemen

1) Spalten sind nach der Übersetzung verschoben

Symptome

  • Ihr Importer meldet „falsche Spaltenanzahl“
  • Werte erscheinen unter den falschen Überschriften

Wahrscheinliche Ursachen

  • Ein übersetztes Feld enthält ein nicht maskiertes Anführungszeichen (")
  • Ein übersetztes Feld enthält ein Komma/Zeilenumbruch, ist aber nicht korrekt in Anführungszeichen gesetzt

Lösung

  • Stellen Sie sicher, dass die CSV die korrekten Anführungszeichen-Regeln verwendet (Doppelte Anführungszeichen um Felder; interne Anführungszeichen als "" maskiert).
  • Übersetzen Sie mit einem CSV-bewussten Workflow (anstatt rohen CSV-Text zu übersetzen).

2) Verunstaltete Zeichen (Mojibake) wie ???? oder é

Wahrscheinliche Ursachen

  • Falsche Codierung beim Export/Import (UTF‑8 vs. Legacy)

Lösung

  • Exportieren Sie als UTF‑8.
  • Falls Excel unter Windows verwendet wird, versuchen Sie UTF‑8 mit BOM.
  • Vermeiden Sie manuelles Kopieren/Einfügen, da dies die Codierung verändern kann.

3) Führende Nullen verschwunden (00123123)

Wahrscheinliche Ursachen

  • Automatische Formatierung durch Tabellenkalkulation (Excel/Sheets)

Lösung

  • Behandeln Sie ID-Spalten als Text vor der Bearbeitung/dem Export.
  • Übersetzen Sie bevorzugt mit einem CSV-bewussten Workflow, der Ihre Daten nicht neu typisiert.

4) Datums- oder Dezimalformate wurden geändert

Beispiele

  • 1,234.56 wird zu 1.234,56
  • 2026-01-09 wird zu 09/01/2026

Lösung

  • Übersetzen Sie keine numerischen/Datums-Spalten.
  • Halten Sie Werte maschinenlesbar; lokalisieren Sie Anzeigeformate in Ihrer UI-Schicht, nicht in den Rohdaten.

5) Sicherheitsproblem: CSV-Injection (Excel-Formeln)

Wenn eine übersetzte Zelle mit =, +, - oder @ beginnt, kann Excel die Datei beim Öffnen als Formel auswerten.

Lösung

  • Für CSVs, die in Tabellenkalkulationen geöffnet werden, riskante Zellen durch ein vorangestelltes einfaches Anführungszeichen (') maskieren oder beim Export bereinigen.
  • Erwägen Sie, führende Formelzeichen aus vom Benutzer bereitgestelltem Text vor der Übersetzung/dem Import zu entfernen.
  • Referenz: https://owasp.org/www-community/attacks/CSV_Injection

FAQ

Wie kann ich eine CSV übersetzen, ohne die Spaltenstruktur zu beschädigen?

Verwenden Sie einen CSV-bewussten Workflow und prüfen Sie die Struktur vor dem Import:

  • Übersetzen Sie mit einer CSV-bewussten Methode (Methode 1)
  • Führen Sie die „Schnellchecks“ + QA-Checkliste durch, um Zeilen-/Spaltenanzahl und gültige Anführungszeichen zu bestätigen
  • Wenn Ihre CSV sensible Felder und benutzerorientierten Text mischt, verwenden Sie den „Erweiterten Workflow — Translation Table“

Kann ich nur eine Spalte in einer CSV übersetzen?

Ja. Die sicherste Methode ist, eine Übersetzungstabelle zu erstellen (row_id + source_text + context), nur diese zu übersetzen und dann zurückzumappen. So werden versehentliche Änderungen an IDs und numerischen Feldern vermieden.

Sollte ich die Kopfzeile übersetzen?

Das hängt von Ihrem Anwendungsfall ab:

  • Übersetzen Sie die Kopfzeilen, wenn die CSV von Menschen gelesen wird (Berichte, Exporte).
  • Übersetzen Sie die Kopfzeilen nicht, wenn Ihr System/Importer bestimmte Feldnamen erwartet (E-Commerce-Importe, Datenbanken, Apps).

Meine CSV verwendet Semikolons (;) statt Kommas. Ist das in Ordnung?

Ja, aber stellen Sie sicher, dass Ihr Tool/Importer durchgehend denselben Trenner verwendet. In vielen europäischen Regionen wird standardmäßig das Semikolon genutzt. Ein Unterschied beim Trenner ist ein häufiger Grund für fehlgeschlagene CSV-Importe.

Wie gehe ich mit mehrzeiligem Text (Zeilenumbrüchen) in Zellen um?

Mehrzeilige Zellen sind in CSV erlaubt, müssen aber korrekt in Anführungszeichen gesetzt werden. Wenn Ihr übersetzter Inhalt Zeilenumbrüche enthält, wird ein CSV-kompatibles Übersetzungstool dringend empfohlen, um Zeilenbrüche zu vermeiden.

Tools

  • OpenL CSV Translator Online (Beispiel für ein CSV-kompatibles Tool): https://doc.openl.io/translate/csv
  • Für Excel-Workflows: siehe auch „How to Translate Excel Online“: /how-to-translate-excel-online
  • Für Markdown-Inhalte: „How to Translate Markdown“: /how-to-translate-markdown
  • Wenn Sie Regeln benötigen, was unverändert bleiben soll: „What Not to Translate“: /what-not-to-translate

Zusammenfassung

Um eine CSV-Datei sicher zu übersetzen, bewahren Sie die Struktur (Trenner, Anführungszeichen, Kodierung) und schützen Sie „nicht zu übersetzende“ Felder (IDs, URLs, Platzhalter, Zahlen). Bevorzugen Sie CSV-kompatible Workflows und prüfen Sie die Datei vor dem Import mit der QA-Checkliste.