Csv.Document
语法
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
关于
返回 CSV 文档的内容作为表。
columns
可以为 null、列数、列名称列表、表类型或选项记录。 (有关选项记录的详细信息,请参阅下文。)delimiter
可以是单个字符或字符列表。 默认:","
。- 请参阅
ExtraValues.Type
,了解extraValues
的支持值。 encoding
指定文本编码类型。
如果为 columns
指定了记录(且 delimiter
、extraValues
和 encoding
为 null),则可能会提供以下记录字段:
Delimiter
:列分隔符。 默认:","
。Columns
:可以为 null、列数、列名称列表或表类型。 如果列数小于在输入中找到的数,则将忽略其他列。 如果列数大于在输入中找到的数,则其他列将为 null。 如果未指定,则列数将取决于输入中找到的数。Encoding
:文件的文本编码。 默认值:65001 (UTF-8)。CsvStyle
:指定如何处理引号。CsvStyle.QuoteAfterDelimiter
(默认):字段中的引号只有紧跟分隔符之后才有意义。CsvStyle.QuoteAlways
:不论在何处出现,字段中的引号始终有意义。QuoteStyle
:指定如何处理带引号的换行符。QuoteStyle.None
(默认):所有换行符都视为当前行的末尾,即使它们出现在带引号的值中。QuoteStyle.Csv
:带引号的换行符视为数据的一部分,而不视为当前行的末尾。
示例 1
处理包含列标题的 CSV 文本。
使用情况
let csv = Text.Combine({ "OrderID,Item", "1,Fishing rod", "2,1 lb. worms" }, "#(cr)#(lf)")in Table.PromoteHeaders(Csv.Document(csv))
输出
Table.FromRecords({ [OrderID = "1", Item = "Fishing rod"], [OrderID = "2", Item = "1 lb. worms"]