Freigeben über


Csv.Document

Syntax

 
Csv.Document(source as any, optional columns as any, optional delimiter as any, optional extraValues as nullable number, optional encoding as nullable number) as table

Info

Gibt den Inhalt des CSV-Dokuments als Tabelle zurück.

  • columns kann NULL, die Anzahl der Spalten, eine Listen mit Spaltennamen, ein Tabellentyp oder ein Optionsdatensatz sein.
  • delimiter kann ein einzelnes Zeichen, eine Liste von Zeichen oder der Wert "" sein, der angibt, dass Zeilen durch aufeinanderfolgende Leerzeichen aufgeteilt werden sollen. Standardwert: ",".
  • Informationen zu den unterstützten Werten von extraValues finden Sie unter ExtraValues.Type.
  • encoding Gibt den Textcodierungstyp an.

Wenn ein Datensatz für columns angegeben wird (und delimiter, extraValues und encoding NULL sind), können die folgenden Datensatzfelder bereitgestellt werden:

  • Delimiter: Ein einstelliges Spaltentrennzeichen. Standardwert: ",".
  • Columns: Kann NULL, die Anzahl der Spalten, eine Listen mit Spaltennamen oder ein Tabellentyp sein. Wenn die Anzahl der Spalten niedriger ist als die in der Eingabe gefunden Anzahl, werden die zusätzlichen Spalten ignoriert. Wenn die Anzahl der Spalten höher ist als die in der Eingabe gefunden Anzahl, sind die zusätzlichen Spalten NULL. Wenn kein Wert angegeben wird, wird die Anzahl der Spalten durch die in der Eingabe gefundenen Spalten bestimmt.
  • Encoding: Die Textcodierung der Datei. Standard: 65001 (UTF-8).
  • CsvStyle: Gibt an, wie Anführungszeichen behandelt werden.
    • CsvStyle.QuoteAfterDelimiter (Standard): Anführungszeichen in einem Feld werden nur unmittelbar nach dem Trennzeichen berücksichtigt.
    • CsvStyle.QuoteAlways: Anführungszeichen in einem Feld werden immer berücksichtigt, unabhängig von ihrer Position.
  • QuoteStyle: Gibt an, wie Zeilenumbrüche in Anführungszeichen behandelt werden.
    • QuoteStyle.Csv (Standard): Zeilenumbrüche innerhalb von Anführungszeichen werden als Teil der Daten behandelt, nicht als Ende der aktuellen Zeile.
    • QuoteStyle.None: Alle Zeilenumbrüche werden als Ende der aktuellen Zeile behandelt, auch wenn sie in einem Wert innerhalb von Anführungszeichen auftreten.

Beispiel 1

Verarbeitet den CSV-Text mit Spaltenüberschriften

Verwendung

let
    csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
    Table.PromoteHeaders(Csv.Document(csv))

Ausgabe

Table.FromRecords({
    [OrderID = "1", Item = "Fishing rod"],
    [OrderID = "2", Item = "1 lb. worms"]
})

Beispiel 2

Verarbeitet CSV-Text mit mehreren Trennzeichen. In diesem Beispiel gibt der dritte Parameter das Trennmuster #|# an, das anstelle des Standardwertes verwendet werden soll.

Verwendung

let
    csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
    Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))

Ausgabe

Table.FromRecords({
    [OrderID = "1", Color = "Red"],
    [OrderID = "2", Color = "Blue"]
})