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 ,請參閱ExtraValues.Type
  • encoding 指定文字編碼類型。

如果針對 columns 指定了記錄 (且 delimiterextraValuesencoding 均為 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"]