Læs på engelsk

Del via


Csv.Document

Syntaks

 
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

Om

Returnerer indholdet af CSV-dokumentet som en tabel.

  • columns kan være null, antallet af kolonner, en liste over kolonnenavne, en tabeltype eller en indstillingspost.
  • delimiter kan være et enkelt tegn, en liste over tegn eller værdien "", som angiver, at rækker skal opdeles efter efterfølgende mellemrumstegn. Standard: ",".
  • Se ExtraValues.Type for at få vist de understøttede værdier for extraValues.
  • encodingangiver tekstkodningstypen.

Hvis der er angivet en post for columns (og delimiter, extraValuesog encoding er null), kan følgende postfelter angives:

  • Delimiter: Et kolonneafgrænser med et enkelt tegn. Standard: ",".
  • Columns: Kan være null, antallet af kolonner, en liste over kolonnenavne eller en tabeltype. Hvis antallet af kolonner er lavere end det antal, der blev fundet i inputtet, ignoreres de ekstra kolonner. Hvis antallet af kolonner er højere end det antal, der blev fundet i inputtet, vil de ekstra kolonner være null. Når det ikke er angivet, bestemmes antallet af kolonner af det, der findes i inputtet.
  • Encoding: Tekstkodningen af filen. Standard: 65001 (UTF-8).
  • CsvStyle: Angiver, hvordan anførselstegn håndteres.
  • QuoteStyle: Angiver, hvordan linjeskift i anførselstegn håndteres.
    • QuoteStyle.Csv (standard): Linjeskift i anførselstegn behandles som en del af dataene og ikke som slutningen af den aktuelle række.
    • QuoteStyle.None: Alle linjeskift behandles som slutningen af den aktuelle række, også selvom de forekommer i en citeret værdi.

Eksempel 1

Behandl CSV-tekst med kolonneoverskrifter.

Brug

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

Output

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

Eksempel 2

Behandl CSV-tekst med flere afgrænsertegn. I dette eksempel angiver den tredje parameter det afgrænsermønster #|# , der skal bruges i stedet for standarden.

Brug

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

Output

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