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
(delimiter
、extraValues
、encoding
は 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"]
})