設定形式の変換

ENVからJSON変換値の意味を決めてから形式を変える

文字列の保持と型推論を区別し、階層の復元は必要なときだけ有効にします。

ENVからJSON変換

入力

結果

内容はこのブラウザ内で処理します。送信・実行・保存せず、URLにも含めません。

dotenv 17.4.2の厳格な部分集合です。引用した値は文字列のまま。推論は引用のないJSON数値とtrue、false、nullのみ。コメントと元の引用符は残りません。

入力50万文字/UTF-8で2 MB。代入1万件、5万ノード、深さ100、数値トークン1,000文字、出力200万文字まで。

内容を入力するか変換を実行してください。

ENVからJSON変換では、環境設定の代入行をオブジェクトとして確認できます。ポート番号も実行時には文字列です。引用したfalseを意図せず真偽値へ変えることなく、受け取り側に合う形を選べます。

dotenv変換で対応する設定を読み取り、JSONからENVで代入行を作成できます。環境変数の参照展開やコマンド実行は行わず、アプリ固有のキー名も推測しません。

ENVからJSON変換を使う理由

型と構造の変更を明示する

文字列としての意味を維持

ENVからJSON変換は、001、false、空の代入も既定では文字列として扱います。受け取り側が数値や真偽値、nullを必要とするときだけ推論を選んでください。引用した値は推論中も文字列です。

代入行の色付きの値が引用されたJSONフィールドへ移り、別の経路で引用のない値が型ごとの形になる図。

境界のある階層を作る

階層を有効にするとDATABASE__HOSTはDATABASE内のHOSTになります。親と末端の衝突や、元の区切りへ戻せない名前はエラーになり、値の格納先を勝手に変更しません。

二つのキー要素がオブジェクトの木へ分かれ、衝突するパスが赤い障壁で止まる図。

出力先の約束に合わせる

見た目以外にも影響する三つの設定

01

型を推論するか決める

既定は文字列の保持です。推論対象は引用のないJSON数値と小文字のtrue、false、nullだけ。001、NaN、[]や引用した数字は文字列です。JSON→ENVでも文字列モードは文字列以外の末端値を拒否します。

02

階層は意図して有効にする

平面モードのDATABASE__HOSTは一つの名前です。__モードはオブジェクトのパスへ分割します。空要素、衝突、要素内の__、曖昧な下線境界は拒否されます。配列や入れ子の空オブジェクトは出力できません。

03

逆変換の前に内容を確認

結果を使う逆変換では置換内容と新しい方向を表示し、適用後は入力・設定・結果を一度戻せます。自動変換は350ms待って実行。オフなら変換ボタンかCtrl/Cmd+Enterを使います。編集時点で古い結果の出力は無効になります。

暗黙の型変換を避ける

境界ごとにデータを確認

数値の表記を保持

推論したJSON数値はbinary64を経由せず、桁と指数表記を保ちます。受け取り側では丸め、オーバーフロー、アンダーフローが起こり得ます。数値トークンは両方向とも1,000文字までです。

検証した引用規則

単一引用符、二重引用符、バッククォートで複数行も囲めます。二重引用符のバックスラッシュnとrだけをLFとCRへ変換し、それ以外のバックスラッシュは残します。出力には値に含まれない区切りを選びます。

大文字小文字を保つパス

ENV名は[A-Za-z_][A-Za-z0-9_]*に従います。重複、不正な名前、親子の衝突は全体の変換を停止します。検証済みdotenvの読み取りに合わせ、__proto__は拒否します。

画面とファイルが同じ内容

結果、クリップボード、UTF-8ダウンロードは同じテキストです。ファイル読込は置換プレビューを経由します。失敗すると旧結果は無効になり、一部だけの設定を出力しません。

対応する構文と制限

設定の読み取りに範囲を限定

厳格に解析し、実行しない
受理する部分集合をdotenv 17.4.2 parseと照合します。等号代入、任意のexport、空行、#コメント、三種の引用符に対応し、不正行を読み飛ばしません。shell評価、dotenv-expand、コマンド置換、OS環境へのアクセスは行わず、ドル記号の参照は文字のままです。
閉じる引用符の境界
同じ種類の引用符をバックスラッシュで埋め込めません。別の区切りを使ってください。閉じる引用符の直前がバックスラッシュの場合も拒否します。二重引用符で解釈するのはバックスラッシュnとrのみ。ENV入力の実際のCRLFとCRはLFになります。全shellやdotenv方言との互換性は保証しません。
安全に書けない値は拒否
単一引用符、バッククォート、安全な二重引用符の順に試し、最後に裸の値を検討します。裸の値には#、CR/LF、前後の空白、先頭の引用符を許しません。CRは安全な二重引用符が必須で、末尾のバックスラッシュは安全な裸の形だけに対応します。引用符と文字どおりのエスケープが衝突するとパスを報告し、部分出力しません。
オブジェクトと基本型のみ
JSONのルートはオブジェクト必須です。文字列モードは数値・真偽値・nullを拒否し、推論モードではそれらを明示的なトークンにします。引用した文字列は戻しても文字列です。配列を文字列化しません。平面モードは子オブジェクトを拒否。階層モードも空オブジェクト、要素内__、分割で復元できないパスを拒否します。空ルート{}は空のENVになります。各ENV名とパス要素は[A-Za-z_][A-Za-z0-9_]*に従い、大文字小文字を維持します。重複と__proto__は拒否します。
見た目の情報は復元しない
コメント、export、元の区切りと空白はJSONに残りません。名前の自動変更、配列インデックス推論、マージ、ZIP一括処理、URL取得、共有リンク、入力履歴の永続保存はありません。通常のENVローダーは裸のnullやtrueも文字列にするため、型の方針は利用側で選んでください。
処理量には上限がある
入力はUTF-16で50万文字かつUTF-8で2 MB、代入1万件、5万ノード、深さ100までです。数値トークンは1,000文字、出力は200万文字まで。NULと対にならないUnicodeサロゲートは拒否します。サイズ・構文・表現可能性のエラー時はコピーもダウンロードも無効です。

ENVからJSON変換のよくある質問

値と構造の疑問を整理

引用符で囲まれたENV値はどう読み取られますか?

ENVからJSON変換は外側の対応する引用符を除き、中身を文字列にします。二重引用符はバックスラッシュnとrだけを解釈し、単一引用符とバッククォートはそのままです。同種の引用符の埋込みや閉じる位置の曖昧さは拒否します。

コメントやexport指定は変換後も残りますか?

JSONには入りません。引用のない#以降はコメントですが、引用内の#は値です。exportは構文として認識するだけで実行しません。逆変換では新しい代入行を作るため元の見た目は復元できません。

数値がJSONの文字列になる理由は?

環境変数が文字列だからです。推論を選ぶと、引用のない有効なJSON数値とtrue、false、nullだけを型付きにできます。001や引用した42は文字列のまま。大きい数値も上限内なら桁を保ちます。

ENV出力で引用符が必要になるのはいつですか?

空白、#、基本型に見える文字を守るため通常は引用します。JSON流のエスケープを追加せず適切な区切りを選び、一部の引用符の組合せや末尾バックスラッシュには安全な裸の形を使います。表現できなければパス付きエラーです。

入れ子のJSONをENVに移す方法は?

__階層を選び、対応する基本値へ続く空でないオブジェクトのパスを連結します。DATABASE.HOSTは大文字を保ったDATABASE__HOSTです。配列、空の子オブジェクト、不正名、曖昧な下線は拒否し、平面モードは階層を読み取りません。

別の引用符の例がありますか?

ENVからJSON変換を試す

ENVからJSON変換で文字列の扱いとオブジェクトの対応を明確にしてから、設定ファイル間で値を移しましょう。

受け取り側ローダーの型と引用規則も確認してください。