Sdílet prostřednictvím


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 extraValuesnajdete v ExtraValues.Type .
  • encoding určuje typ kódování textu.

Pokud je pro (a columns) delimiterzadá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.
  • 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"]
})