---
schema_version: "1"
id: 5a81b9630dc846711791ae3add8ed16983d5dee82ec9c8634d58cca44d9c69f0
title: 固定幅形式
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/dataweave/2.5/dataweave-formats-fixedwidth.md
canonical_url: https://docs.mulesoft.com/jp/dataweave/2.5/dataweave-formats-fixedwidth
source_site: docs.mulesoft.com
content_type: documentation
content_hash: c86b5c6485a51ae3865e75cb1a9254d6126afff974f3b5d539e1507a8f7203f4
description: MuleSoft Documentation Site
release: "2.5"
latest: false
---
# 固定幅形式

MIME タイプ: `application/flatfile`

ID: `flatfile`

固定幅の種別は技術的にはフラットファイル形式の種別とみなされますが、このオプションを選択すると、Transform コンポーネントでは、この形式のニーズに合わせて適切に調整された設定が提供されます。

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">DataWeave の固定幅は最大 15 MB のファイルをサポートし、メモリ要件は約 40 対 1 です。たとえば、1 MB のファイルは処理に最大 40 MB のメモリを必要とするため、大きい固定幅ファイルに対する TPS のニーズと組み合わせてこのメモリ要件を考慮することが重要です。これは正確な数値ではありません。この値は、マッピング命令の複雑さによって異なる可能性があります。</td></tr></tbody></table>

## [](#properties)Configuration のプロパティ

DataWeave では、この形式の以下の設定プロパティがサポートされています。

### [](#reader_properties)Reader のプロパティ

この形式は、入力データを読み取るための指示を提供するプロパティを受け入れます。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 16.6666%;">
<col style="width: 16.6666%;">
<col style="width: 16.6666%;">
<col style="width: 50.0002%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">パラメーター</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">デフォルト</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>allowLenientWithBinaryNotEndElement</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スキーマに型が Binary (バイナリ) または Packed (パック) の要素が含まれていると、最後の要素の形式種別に関係なく、​<code>lenient</code>​ オプションで短いレコードが許可されません。このプロパティを ​<code>true</code>​ に設定すると、検証はレコードが Binary (バイナリ) または Packed (パック) の型で終了するケースのみに適用されます。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>enforceRequires</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>true</code>​ に設定されていると、必須値がない場合にエラーが発生します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>missingValues</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>欠落値を表すために使用される文字を入力します。デフォルト以外の設定を有効化するには、​<code>useMissCharAsDefaultForFill</code>​ プロパティを ​<code>true</code>​ に設定し、​<code>missingValues</code>​ に次のいずれかの値を使用します。</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>none</code>​ (リーダーの場合) または ​<code>NONE</code>​ (ライターの場合): すべてのデータを値として処理する。</p>
</li>
<li>
<p><code>spaces</code>​ (リーダーの場合) または ​<code>SPACES</code>​ (ライターの場合): スペースのみで構成される項目を欠落値として解釈する。フラットファイルまたは固定幅形式のデフォルトです。</p>
</li>
<li>
<p><code>zeroes</code>​ (リーダーの場合) または ​<code>ZEROES</code>​ (ライターの場合): <code>0</code>​ 文字のみで構成される数値項目​<em>と</em>​スペースのみで構成される文字項目を欠落値として解釈する。</p>
</li>
<li>
<p><code>nulls</code>​ (リーダーの場合) または ​<code>NULLS</code>​ (ライターの場合): <code>0</code>​ バイトのみで構成される項目を欠落値として解釈する。COBOL コピーブックスキーマのデフォルトです。</p>
</li>
</ul>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>notTruncateDependingOnSubjectNotPresent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean (ブール)</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>DEPENDING ON の対象が存在しない場合にグループ全体を入力します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>recordParsing</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>'strict'</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>予想される、行/レコード間の分離の種別を指定します。</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>strict</code>​: 各レコードの末尾で改行が予想される。  <code>strict</code>​ はデフォルトです。</p>
</li>
<li>
<p><code>lenient</code>​: 改行が使用されるが、レコードがスキーマ仕様よりも短いまたは長い場合がある。ペイロードに改行がない場合は、​<code>lenient</code>​ を使用しないでください。​<code>recordParsing</code>​ のもう 1 つのオプションで改行がないレコードがサポートされます。</p>
</li>
<li>
<p><code>noTerminator</code>​: レコードが分離されずに互いに続く。このオプションは、改行がない固定長のレコードでお勧めします。</p>
</li>
<li>
<p><code>singleRecord</code>​: 入力全体が 1 つのレコード。</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>種別 ​<code>Binary</code>​ または ​<code>Packed</code>​ のスキーマでは、改行を検出できないため、​<code>recordParsing</code>​ を ​<code>lenient</code>​ に設定すると、長いレコードのみを処理でき、短いレコードは処理できません。現在、このスキーマも特定の 1 バイト文字エンコードでのみ機能します (つまり、UTF-8 などの複数バイト形式では機能しません)。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>retainEmptyStringFieldsOnParsing</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean (ブール)</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>解析動作の出力マップで、デフォルト値が設定された文字列項目を欠落した状態のまま保持できるようにします。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>schemaPath</code>​ (必須)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スキーマ定義へのパス。入力を解析するスキーマファイルのローカルディスク内の場所を指定します。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>segmentIdent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>固定幅のスキーマまたは COBOL コピーブックスキーマのセグメント識別子。スキーマに複数のセグメント定義が含まれている場合、単一セグメントまたはレコード定義を解析するときに必要になります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>structureIdent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>フラットファイルスキーマの構造識別子。スキーマに複数の構造定義が含まれている場合、構造定義を解析するときに必要になります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>truncateDependingOn</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>COBOL コピーブックの DEPENDING ON 値を、使用される長さに切り捨てます。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>useMissCharAsDefaultForFill</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean (ブール)</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>デフォルトでは、フラットファイルリーダーおよびライターでは、欠落文字にスペースが使用され、​<code>missingValues</code>​ プロパティの設定が無視されます。このプロパティを ​<code>true</code>​ に設定すると、DataWeave は ​<code>missingValues</code>​ プロパティの設定に従います。2021 年 9 月リリースの Mule 4.3.0-20210823 の DataWeave 2.3 (2.3.0-20210823) で導入されました。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>zonedDecimalStrict</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>COBOL コピーブックのゾーン 10 進数値に署名エンコードの 'strict' ASCII 形式を使用します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
</tbody>
</table>

### [](#writer_properties)Writer のプロパティ

この形式は、出力データを書き込むための指示を提供するプロパティを受け入れます。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 16.6666%;">
<col style="width: 16.6666%;">
<col style="width: 16.6666%;">
<col style="width: 50.0002%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">パラメーター</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">デフォルト</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>bufferSize</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Number</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8192</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>バッファライターのサイズ (バイト)。値は ​<code>8</code>​ よりも大きい必要があります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>deferred</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>true</code>​ に設定すると、出力をデータストリームとして生成し、スクリプトの実行は生成されたコンテンツがコンシュームされるまで延期されます。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>encoding</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>出力で使用するエンコード (UTF-8 など)。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>enforceRequires</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>true</code>​ に設定されていると、必須値がない場合にエラーが発生します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>missingValues</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>欠落値を表すために使用される文字を入力します。デフォルト以外の設定を有効化するには、​<code>useMissCharAsDefaultForFill</code>​ プロパティを ​<code>true</code>​ に設定し、​<code>missingValues</code>​ に次のいずれかの値を使用します。</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>none</code>​ (リーダーの場合) または ​<code>NONE</code>​ (ライターの場合): すべてのデータを値として処理する。</p>
</li>
<li>
<p><code>spaces</code>​ (リーダーの場合) または ​<code>SPACES</code>​ (ライターの場合): スペースのみで構成される項目を欠落値として解釈する。フラットファイルまたは固定幅形式のデフォルトです。</p>
</li>
<li>
<p><code>zeroes</code>​ (リーダーの場合) または ​<code>ZEROES</code>​ (ライターの場合): <code>0</code>​ 文字のみで構成される数値項目​<em>と</em>​スペースのみで構成される文字項目を欠落値として解釈する。</p>
</li>
<li>
<p><code>nulls</code>​ (リーダーの場合) または ​<code>NULLS</code>​ (ライターの場合): <code>0</code>​ バイトのみで構成される項目を欠落値として解釈する。COBOL コピーブックスキーマのデフォルトです。</p>
</li>
</ul>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>notTruncateDependingOnSubjectNotPresent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean (ブール)</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>DEPENDING ON の対象が存在しない場合にグループ全体を入力します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>recordTerminator</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>レコード区切り文字の改行。有効な値: <code>lf</code>​、​<code>cr</code>​、​<code>crlf</code>​、​<code>none</code>​。Mule バージョン 4.0.4 以降では、これは、複数のレコードがある場合の区切り文字としてのみ使用されます。値は文字コードに直接変換されます (​<code>none</code>​ では各レコードの終端はありません)。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>schemaPath</code>​ (必須)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スキーマ定義へのパス。入力を解析するスキーマファイルのローカルディスク内の場所を指定します。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>segmentIdent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>固定幅のスキーマまたは COBOL コピーブックスキーマのセグメント識別子。スキーマに複数のセグメント定義が含まれている場合、単一セグメントまたはレコード定義を解析するときに必要になります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>structureIdent</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>フラットファイルスキーマの構造識別子。スキーマに複数の構造定義が含まれている場合、構造定義を解析するときに必要になります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>trimValues</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>項目の幅より長い値を切り捨てます。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>truncateDependingOn</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>COBOL コピーブックの DEPENDING ON 値を、使用される長さに切り捨てます。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>useMissCharAsDefaultForFill</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean (ブール)</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>デフォルトでは、フラットファイルリーダーおよびライターでは、欠落文字にスペースが使用され、​<code>missingValues</code>​ プロパティの設定が無視されます。このプロパティを ​<code>true</code>​ に設定すると、DataWeave は ​<code>missingValues</code>​ プロパティの設定に従います。2021 年 9 月リリースの Mule 4.3.0-20210823 の DataWeave 2.3 (2.3.0-20210823) で導入されました。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>zonedDecimalStrict</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>Boolean</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>COBOL コピーブックのゾーン 10 進数値に署名エンコードの 'strict' ASCII 形式を使用します。</p>
</div>
<div class="paragraph">
<p>有効な値は、​<code>true</code>​ または ​<code>false</code>​ です。</p>
</div></div></td>
</tr>
</tbody>
</table>

## [](#mime_type_fixed_width)サポートされる MIME タイプ (固定幅)

固定幅形式では、次の MIME タイプがサポートされています。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 100%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">MIME タイプ</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*/flatfile</code></p></td>
</tr>
</tbody>
</table>