Direkt zum Tool
ViewCSV
Kein Datei-Upload

CSV-Datei validieren

signups.csv· BEISPIELDATEN7 Zeilen · 6 Spalten
Spaltenregeln (optional)
Die Regeln werden als Table-Schema-JSON (Frictionless Data) gespeichert, damit auch andere Tools sie lesen können.
4 Fehler, 2 Warnungen
Bericht
ZeileSpalteProblemWert
1nameBeginnt oder endet mit Leerzeichen. Lukas Müller
2emailEntspricht nicht dem Format E-Mail-Adresse.not-an-email
2signup_dateKein gültiger Wert vom Typ Datum (JJJJ-MM-TT).2026-02-30
6emailEntspricht nicht dem Format E-Mail-Adresse.N/A
6signup_dateKein gültiger Wert vom Typ Datum (JJJJ-MM-TT).11/03/2026
7nameBeginnt oder endet mit Leerzeichen.Emma Meyer

Zeilennummern zählen die Datenzeilen nach der Kopfzeile; ein Zeilenumbruch in Anführungszeichen beginnt keine neue Zeile.

Öffnen Sie eine CSV-Datei, um ihre Struktur zu prüfen: jeden Datensatz gegen die Feldanzahl der Kopfzeile, leere und doppelte Spaltennamen, verirrte Anführungszeichen, gemischte Zeilenenden und Leerzeilen. Optional legen Sie Regeln pro Spalte fest, etwa Ganzzahl, Datum, E-Mail, Pflichtfeld, eindeutig, zulässige Werte oder ein regulärer Ausdruck. Jedes Problem wird mit Datenzeile, Spalte und Wert aufgeführt. Die Regeln verwenden das Vokabular von Frictionless Table Schema. Die Datei wird in Ihrem Browser geprüft, nicht hochgeladen.

So validieren Sie eine CSV-Datei

  1. Öffnen Sie eine .csv-, .tsv- oder .txt-Datei. Trennzeichen und ein Byte-Order-Mark für UTF-8 oder UTF-16 werden erkannt. Sehen die Spalten falsch aus, wählen Sie in den Importeinstellungen ein anderes Trennzeichen oder eine ältere Codierung.
  2. Geben Sie bei Bedarf die Anzahl der Spalten an, die jeder Datensatz haben muss. Bleibt das Feld leer, gilt die Spaltenzahl der Kopfzeile.
  3. Fügen Sie bei Bedarf Regeln für die Spalten hinzu, auf die es Ihnen ankommt: einen Typ, ob ein Wert Pflicht ist oder eindeutig sein muss, zulässige Werte, Minimum und Maximum, einen Längenbereich oder ein Muster.
  4. Starten Sie die Prüfung und arbeiten Sie den Bericht ab: zuerst die Fehler, dann die Warnungen. Korrigieren Sie Werte im CSV-Editor oder räumen Sie sie mit CSV bereinigen auf, und validieren Sie dann erneut.

Um vor dem Schreiben von Regeln die Typen, leeren Werte und unterschiedlichen Werte jeder Spalte zu sehen, erstellen Sie mit CSV analysieren ein Profil der Datei.

Strukturprüfungen

Feldanzahl (Fehler)Ein Datensatz hat mehr oder weniger Felder als die Kopfzeile oder als die von Ihnen angegebene Zahl. RFC 4180 erwartet, dass jeder Datensatz gleich viele Felder hat; eine Abweichung bedeutet meist ein Trennzeichen ohne Anführungszeichen oder einen fehlenden Wert.
Leere Spaltenüberschrift (Fehler)Ein Spaltenname ist leer oder besteht nur aus Leerzeichen. Der Bericht nennt seine Position.
Doppelte Spaltenüberschrift (Fehler)Zwei Spaltennamen sind nach dem Entfernen von Leerzeichen gleich. Der Bericht nennt beide Positionen.
Verirrtes Anführungszeichen (Warnung)Ein Anführungszeichen steht mitten in einem Wert ohne Anführungszeichen, etwa 5" screen. Der Wert bleibt wie geschrieben; der Bericht nennt die Anzahl für die Datei.
Text nach schließendem Anführungszeichen (Warnung)Nach einem schließenden Anführungszeichen folgen vor dem nächsten Trennzeichen weitere Zeichen, wie in "abc"x.
Gemischte Zeilenenden (Warnung)Die Datei mischt CRLF, LF und CR als Datensatzende. Der Bericht zählt jede Art.
Leerzeilen (Warnung)Leere Zeilen zwischen Datensätzen. Sie werden übersprungen und im Bericht gezählt.
Umgebende Leerzeichen (Warnung)Ein Wert hat Leerzeichen vor oder nach dem Text. Standardmäßig aktiv; Werte, die nur aus Leerzeichen bestehen, werden nicht gemeldet.

Ein Wert in Anführungszeichen, der nie geschlossen wird, beendet die Prüfung mit einem Fehler, der den Datensatz nennt, in dem er beginnt – denn der Rest der Datei lässt sich nicht mehr zuverlässig in Datensätze aufteilen.

Spaltenregeln

Typ: integer (Ganzzahl)Nur optionales Vorzeichen und Ziffern, etwa -12 oder 007. Werte jenseits von ±9.007.199.254.740.991 werden gemeldet; für lange IDs verwenden Sie daher eine Textregel mit Muster.
Typ: number (Zahl)Einfache Dezimalschreibweise mit Punkt, etwa 3.5, -0.25 oder 1e3. Keine Tausendertrennzeichen, Währungsangaben oder umgebenden Leerzeichen – ein Dezimalkomma wie in deutschen Exporten wird also gemeldet.
Typ: boolean (Wahrheitswert)true oder false in beliebiger Groß- und Kleinschreibung. 1, 0, yes und no werden gemeldet.
Typ: date, datetime (Datum, Datum mit Uhrzeit)Ein tatsächlich existierendes Kalenderdatum im Format YYYY-MM-DD; 2024-02-30 wird also gemeldet. „datetime“ ergänzt eine Uhrzeit (2024-03-05T09:30, optional mit Sekunden und einem Versatz wie Z oder +02:00).
Typ: string mit FormatE-Mail (eine einfache Formprüfung auf name@domain.tld, kein Test der Zustellbarkeit), URI (eine absolute URL mit Schema) oder UUID (Versionen 1–8).
PflichtfeldDer Wert darf nicht leer sein. Ohne diese Regel bestehen leere Werte jede andere Regel.
EindeutigKein Wert darf sich in der Spalte wiederholen. Der Bericht nennt die Zeile, in der er zuerst vorkam. Leere Werte werden nicht verglichen.
Zulässige WerteDer Wert muss einem der aufgeführten Werte exakt entsprechen, einschließlich Groß- und Kleinschreibung und Leerzeichen.
Minimum, MaximumEingeschlossene Grenzen für Ganzzahl- und Zahlenspalten bzw. ISO-Datumswerte für Datums- und Datum-mit-Uhrzeit-Spalten.
Mindest- und HöchstlängeGezählt in Unicode-Zeichen: é und 日 zählen jeweils als ein Zeichen.
MusterEin regulärer Ausdruck, der – wie Table Schema es verlangt – auf den ganzen Wert passen muss, zum Beispiel [A-Z]{2}\d{4}. Groß- und Kleinschreibung wird unterschieden.

Eine Regel gilt für die Spalte, deren Überschrift exakt ihrem Namen entspricht; Regeln für Spalten, die nicht in der Datei vorkommen, werden übersprungen. Regeln lassen sich als Table Schema-JSON-Datei speichern und für den nächsten Export wieder laden; unbekannte Typen und Schlüssel in einem geladenen Schema werden ignoriert.

Den Bericht lesen

  • Zeilennummern zählen die Datensätze nach der Kopfzeile (die Kopfzeile ist Zeile 0). Ein Wert mit Zeilenumbruch in Anführungszeichen bleibt ein Datensatz; die Zeilennummer kann daher von der Zeilennummer im Texteditor abweichen.
  • Jedes Problem nennt seine Spalte und zitiert den Wert, sodass Sie im CSV-Viewer oder im Editor danach suchen können.
  • Fehler verletzen die Struktur oder eine Regel; Warnungen weisen auf Daten hin, die gültiges CSV sind, aber häufig Importprobleme verursachen.
  • Aufgelistet werden bis zu 5.000 Probleme. Darüber hinaus werden die Summen je Problemart weiter gezählt, und die Liste wird als gekürzt markiert.

Grenzen und Datenschutz

Der Validator liest einen Datensatz nach dem anderen. Dateien über der interaktiven Grenze von 25 MB werden daher als Datenstrom in einem Hintergrund-Worker geprüft, mit Fortschrittsanzeige und Abbruchmöglichkeit. Im Datenstrommodus werden Datensätze mit weniger Feldern als die Kopfzeile derzeit vor der Prüfung aufgefüllt; als Fehler bei der Feldanzahl werden dort also nur Datensätze mit zusätzlichen Feldern gemeldet.

Die Validierung läuft in Ihrem Browser. Die CSV-Datei wird nicht auf einen Server hochgeladen.

Beispiel

Ein Export von Anmeldungen, geprüft mit vier Regeln: id ist eine eindeutige Pflicht-Ganzzahl, email ein Pflicht-Text im E-Mail-Format, signup_date ein Datum, und plan erlaubt basic, pro und team. Die Ausgabe ist der Bericht des Validators, nach der Zusammenfassung ein Problem pro Zeile: ein unmögliches Datum, eine E-Mail ohne Domain-Endung, Pro in falscher Schreibweise, eine wiederholte ID, eine fehlende E-Mail und team mit abschließendem Leerzeichen – das ist zugleich eine Warnung und kein zulässiger Wert.

CSV
id,email,signup_date,plan
1,ana@example.com,2024-02-30,pro
2,kim@example,2024-03-01,Pro
2,bao@example.com,2024-03-04,basic
4,,2024-03-05,team 
Prüfbericht
{"rows":4,"errors":6,"warnings":1,"truncated":false}
{"code":"type","row":1,"column":"signup_date","value":"2024-02-30","params":{"type":"date"}}
{"code":"format","row":2,"column":"email","value":"kim@example","params":{"format":"email"}}
{"code":"enum","row":2,"column":"plan","value":"Pro","params":{"allowed":"basic, pro, team"}}
{"code":"unique","row":3,"column":"id","value":"2","params":{"first":2}}
{"code":"whitespace","row":4,"column":"plan","value":"team ","params":{}}
{"code":"required","row":4,"column":"email","value":"","params":{}}
{"code":"enum","row":4,"column":"plan","value":"team ","params":{"allowed":"basic, pro, team"}}

Fragen und Antworten

Warum wird ein Wert mit Leerzeichen gegen die Liste zulässiger Werte gemeldet?

Regeln vergleichen den Wert genau so, wie er geschrieben ist, ohne Leerzeichen zu entfernen: team ist nicht team. Kürzen Sie die Spalte mit CSV bereinigen, oder korrigieren Sie den Export.

Verändert die Validierung meine Datei?

Nein. Sie liest die Datei nur und meldet, was sie findet. Beheben Sie die Probleme im Editor oder im Quellsystem.

Kann ich dieselben Regeln für jeden Monatsexport wiederverwenden?

Ja. Speichern Sie die Regeln als Table-Schema-JSON-Datei und laden Sie sie beim nächsten Mal; die Regeln werden den Spalten über den Namen zugeordnet.

Standards und Quellen