次の方法で共有


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 は、行を連続する空白文字で分割する必要があることを示す、1 文字、文字の一覧、または値 "" を指定できます。 既定値:","
  • extraValuesでサポートされている値については、ExtraValues.Type を参照してください。
  • encoding は、 テキスト エンコード 型を指定します。

レコードが columns (delimiterextraValuesencoding は null) に対して指定されている場合、次のレコード フィールドを指定することができます。

  • Delimiter: 1 文字の列区切り記号。 既定値:","
  • Columns: null、列数、列名のリスト、またはテーブル型のいずれかになります。 列数が入力で見つかった数よりも少ない場合、追加の列は無視されます。 列数が入力で見つかった数よりも多い場合、追加の列は null になります。 指定しない場合、列数は入力で見つかったものによって決まります。
  • Encoding: ファイルのテキスト エンコード。 既定値: 65001 (UTF-8)。
  • CsvStyle: 引用符の処理方法を指定します。
    • CsvStyle.QuoteAfterDelimiter (既定値): フィールド内の引用符は、区切り記号の直後でのみ有効です。
    • CsvStyle.QuoteAlways: フィールド内の引用符は、使用される場所を問わずいつでも有効です。
  • QuoteStyle: 引用符で囲まれた改行の処理方法を指定します。
    • QuoteStyle.Csv (既定値): 引用符で囲まれた改行は、現在の行の末尾としてではなく、データの一部として扱われます。
    • QuoteStyle.None: すべての改行は、引用符で囲まれた値の中で出現した場合でも、現在の行の末尾として扱われます。

例 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"]
})

例 2

複数の区切り文字を持つ CSV テキストを処理します。 この例では、3 番目のパラメーターで既定値の代わりに、区切り記号パターン #|# を使用するよう指定しています。

使用方法

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

出力

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