Csv.Document
Syntaxe
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
Informace
Vrátí obsah dokumentu CSV jako tabulku.
-
columns
může mít hodnotu null, počet sloupců, seznam názvů sloupců, typ tabulky nebo záznam možností. -
delimiter
může být jeden znak, seznam znaků nebo hodnota""
, která označuje, že řádky by měly být rozděleny podle po sobě jdoucích prázdných znaků. Výchozí hodnota:","
. - Informace o podporovaných hodnotách
extraValues
najdete v ExtraValues.Type . -
encoding
určuje typ kódování textu.
Pokud je pro (a columns
) delimiter
zadán extraValues
záznam a má encoding
hodnotu null, mohou být zadána následující pole záznamu:
-
Delimiter
: Oddělovač sloupců s jedním znakem. Výchozí hodnota:","
. -
Columns
: Může mít hodnotu null, počet sloupců, seznam názvů sloupců nebo typ tabulky. Pokud je počet sloupců nižší než počet nalezený ve vstupu, budou další sloupce ignorovány. Pokud je počet sloupců vyšší než počet nalezený ve vstupu, budou další sloupce null. Pokud ho nezadáte, určí se počet sloupců podle toho, co se ve vstupu nachází. -
Encoding
: Kódování textu souboru. Výchozí hodnota: 65001 (UTF-8). -
CsvStyle
: Určuje způsob zpracování uvozovek.- CsvStyle.QuoteAfterDelimiter (výchozí): Uvozovky v poli jsou významné pouze bezprostředně za oddělovačem.
- CsvStyle.QuoteAlways: Uvozovky v poli jsou vždy významné bez ohledu na to, kde se zobrazují.
-
QuoteStyle
: Určuje způsob zpracování konců řádků v uvozových čarách.- QuoteStyle.Csv (výchozí): Konce řádků v uvozovkách se považují za součást dat, ne jako konec aktuálního řádku.
- QuoteStyle.None: Všechny konce řádků jsou považovány za konec aktuálního řádku, i když se vyskytují uvnitř uvozovky.
Příklad 1
Zpracování textu CSV se záhlavími sloupců
Využití
let
csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv))
Výstup
Table.FromRecords({
[OrderID = "1", Item = "Fishing rod"],
[OrderID = "2", Item = "1 lb. worms"]
})
Příklad 2
Zpracování textu CSV s více znaky oddělovače V tomto příkladu třetí parametr určuje vzor #|#
oddělovače, který se má použít místo výchozího.
Využití
let
csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))
Výstup
Table.FromRecords({
[OrderID = "1", Color = "Red"],
[OrderID = "2", Color = "Blue"]
})