なぜCSVエクスポートにアポストロフィが追加されるのか
余分なアポストロフィは意図的な場合があります。スプレッドシートの注意事項と正確なデータのトレードオフを確認してください。
CSVにエクスポートされた先頭のアポストロフィは意図的な場合があります。CozyToolkitでは、スプレッドシートの数式からCSVを保護を有効にすると、特定の数式のような値にアポストロフィを追加します。このオプションはデフォルトでオンです。
例えば、テキスト =1+1 は '=1+1 になります。これはスプレッドシートが値を数式として解釈するリスクを減らすためです。また、元のデータも変わるため、後でCSVからJSONに変換してもアポストロフィは保持されます。
普通に見える4つの値をエクスポートする
サンプルJSONをダウンロードし、CSV、JSON & YAMLコンバーターにアップロードします。からをJSON、宛先をCSVに設定し、オプションを開いてスプレッドシートの数式からCSVを保護が有効のままにします。
サンプルには4つのラベル付き値があります。コード出力では、エクスポートされたフィールドは以下の通りです。
| 元の文字列 | エクスポートされたCSVフィールド | 解析された値 |
|---|---|---|
=1+1 |
"'=1+1" |
'=1+1 |
@cozytoolkit |
"'@cozytoolkit" |
'@cozytoolkit |
-12 |
"'-12" |
'-12 |
Ready to share |
Ready to share |
Ready to share |
ダウンロードでCSVを保存するか、チェック済みエクスポートを確認してください。サンプルは無害な算術式、ハンドル、オフセットを使い変換がわかりやすくなっています。
表タブは入力レコードのプレビューです。エクスポート時に追加されたアポストロフィはコードやダウンロードしたCSVで確認できます。入力テーブルはエスケープされた文字列のプレビューではありません。
CSVの引用符は別の役割を持つ
外側のダブルクォートはCSVの構文で、CSVパーサーは読み込み時にこれを取り除きます。引用符内のアポストロフィはフィールドの値の一部で、パース後も残ります。
結果を入力として使用を選ぶと、エクスポートしたCSVをJSONに戻せます。数値検出をオフにすると、最初の値は "'=1+1" になり、"=1+1" ではありません。往復JSONに4つの結果すべてが示されています。これは意図的なデータ変更であり、引用符の破損ではありません。
下流のシステムで元の文字列が正確に必要な場合は、元のJSONを保持してください。先頭のアポストロフィを無差別に削除しないでください。元のデータの一部である可能性があります。
このオプションがチェックする内容を理解する
コンバーターはPapa Parseの数式エスケープオプションを使っています。値が =、+、-、@、タブ、または復帰文字で始まる場合に接頭辞を付けます。これはハンドルや負の数値文字列など無害な値も含みます。オプションは各値が悪意あるかどうかを判断しません。
これは限定的なエクスポートの予防策であり、どのスプレッドシートでも安全にCSVを開ける保証ではありません。現在のチェックは先頭の改行や全角記号などすべての可能な接頭辞をカバーしていません。スプレッドシートのインポート設定は異なり、保存して再度開くとエスケープが変わることもあります。OWASPはCSVインジェクションの制限を説明しています。
信頼できないデータの場合は、スプレッドシートのテキストインポート機能を使い、該当列を明示的にテキストとして扱い、結果を確認してください。ファイルを受け取るアプリケーションやバージョンで動作を検証してください。
正確なデータのエクスポートはスプレッドシート用と分ける
信頼できる機械間ワークフローで元の文字列を正確に使う場合は、保護を無効にしてアポストロフィの追加を避けます。そのファイルは人がスプレッドシートで開くものとは別に管理してください。テーブルファイルが不要ならJSONのほうが明確な受け渡しになります。
結果記録は2026年11月2日に実際のコンバーターで保護のオン・オフを比較しています。エクスポートされたテキストとパーサーで読み取った値を確認できます。ExcelやLibreOfficeなどのスプレッドシートをテストしたわけではなく、数式エスケープが信頼できないファイルを完全に安全にする保証もありません。