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 de understøttede værdier for
extraValues
. -
encoding
angiver tekstkodningstypen.
Hvis der er angivet en post for columns
(og delimiter
, extraValues
og 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.- CsvStyle.QuoteAfterDelimiter (standard): Anførselstegn i et felt er kun vigtige umiddelbart efter afgrænseren.
- CsvStyle.QuoteAlways: Anførselstegn i et felt er altid vigtige, uanset hvor de vises.
-
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"]
})