JSON ਨੂੰ YAML ਕਨਵਰਟਰ
JSON ਢਾਂਚੇ ਨੂੰ ਸਾਫ਼ YAML ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲੋ। ਕੁਬਰਨੇਟਸ ਮੈਨੀਫੈਸਟ ਅਤੇ ਕਲਾਉਡ ਕੌਂਫਿਗਸ ਲਈ ਆਦਰਸ਼।
JSON ਢਾਂਚੇ ਨੂੰ ਸਾਫ਼ YAML ਫਾਰਮੈਟ ਵਿੱਚ ਬਦਲੋ। ਕੁਬਰਨੇਟਸ ਮੈਨੀਫੈਸਟ ਅਤੇ ਕਲਾਉਡ ਕੌਂਫਿਗਸ ਲਈ ਆਦਰਸ਼।
JSON ਤੋਂ YAML ਤੱਕ ਜਾਣਾ ਜ਼ਿਆਦਾਤਰ ਮਨੁੱਖਾਂ ਲਈ ਡੇਟਾ ਨੂੰ ਵਧੇਰੇ ਪੜ੍ਹਨਯੋਗ ਬਣਾਉਣ ਬਾਰੇ ਹੈ। ਦੋਵੇਂ ਫਾਰਮੈਟ ਇੱਕੋ ਕਿਸਮ ਦੀਆਂ ਬਣਤਰਾਂ ਦਾ ਵਰਣਨ ਕਰਦੇ ਹਨ — ਆਬਜੈਕਟ/ਨਕਸ਼ੇ, ਐਰੇ/ਕ੍ਰਮ, ਸਕੇਲਰ — ਪਰ YAML ਦਾ ਇੰਡੈਂਟੇਸ਼ਨ-ਅਧਾਰਿਤ ਸੰਟੈਕਸ, ਵਿਕਲਪਿਕ ਹਵਾਲਾ, ਅਤੇ ਟਿੱਪਣੀਆਂ ਲਈ ਸਮਰਥਨ ਹੱਥ ਨਾਲ ਸਕੈਨ ਅਤੇ ਸੰਪਾਦਿਤ ਕਰਨਾ ਆਸਾਨ ਬਣਾਉਂਦੇ ਹਨ। ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਕੈਨੋਨੀਕਲ ਵਰਤੋਂ ਦੇ ਕੇਸ ਹਨ: ਕੁਬਰਨੇਟਸ ਮੈਨੀਫੈਸਟ, ਸੀਆਈ ਵਰਕਫਲੋਜ਼, ਜਵਾਬਦੇਹ ਪਲੇਬੁੱਕਸ, ਅਤੇ ਦਰਜਨਾਂ ਹੋਰ ਸਾਧਨਾਂ ਨੇ YAML ਨੂੰ ਖਾਸ ਤੌਰ 'ਤੇ ਚੁਣਿਆ ਕਿਉਂਕਿ ਉਨ੍ਹਾਂ ਦੇ ਪ੍ਰਾਇਮਰੀ ਸੰਪਾਦਕ ਮਨੁੱਖ ਹਨ।
ਇਹ ਪਰਿਵਰਤਕ ਇੱਕ ਪਾਰਸ ਕੀਤੇ JSON ਵਸਤੂ ਨੂੰ YAML ਵਿੱਚ ਸੀਰੀਅਲਾਈਜ਼ ਕਰਨ ਲਈ js-yaml ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। YAML ਕਨਵੈਨਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਦੇ ਸਮੇਂ ਨਤੀਜਾ ਡੇਟਾ ਦੇ ਢਾਂਚੇ ਨੂੰ ਬਿਲਕੁਲ ਸੁਰੱਖਿਅਤ ਰੱਖਦਾ ਹੈ: ਨੇਸਟਿੰਗ ਲਈ ਇੰਡੈਂਟੇਸ਼ਨ, ਐਰੇ ਲਈ ਸੂਚੀਆਂ, ਆਬਜੈਕਟ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲਈ ਮੁੱਖ-ਮੁੱਲ ਜੋੜੇ। JSON ਦੇ ਸਖਤ ਡਬਲ-ਕੋਟਿੰਗ ਵਿੱਚ ਢਿੱਲ ਦਿੱਤੀ ਗਈ ਹੈ; ਆਉਟਪੁੱਟ ਵਿੱਚ ਸਿਰਫ਼ ਵਿਸ਼ੇਸ਼ ਅੱਖਰਾਂ ਵਾਲੀ ਸਤਰ ਜਾਂ ਜੋ ਹੋਰ ਕਿਸਮਾਂ ਵਾਂਗ ਦਿਖਾਈ ਦਿੰਦੀਆਂ ਹਨ।
ਪਰਿਵਰਤਨ ਜਾਣਕਾਰੀ-ਸੁਰੱਖਿਅਤ ਹੈ ਸਿਵਾਏ ਜਿੱਥੇ YAML ਪ੍ਰਗਟਾਵੇ ਨੂੰ ਜੋੜਦਾ ਹੈ JSON ਕੋਲ ਨਹੀਂ ਸੀ। ਟਿੱਪਣੀਆਂ ਦਾ ਪੁਨਰ ਨਿਰਮਾਣ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ (JSON ਕੋਲ ਕੋਈ ਨਹੀਂ ਸੀ)। ਐਂਕਰ ਅਤੇ ਉਪਨਾਮ ਸੰਦਰਭ ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਦੁਹਰਾਈਆਂ ਗਈਆਂ ਬਣਤਰਾਂ ਨੂੰ ਸੰਕੁਚਿਤ ਕਰ ਸਕਦੇ ਹਨ ਪਰ ਆਪਣੇ ਆਪ ਤਿਆਰ ਨਹੀਂ ਹੁੰਦੇ ਹਨ; ਆਉਟਪੁੱਟ ਸਾਰੇ ਹਵਾਲਿਆਂ ਨੂੰ ਇਨਲਾਈਨ ਫੈਲਾਉਂਦੀ ਹੈ।
ਮਨੁੱਖਾਂ ਦੇ ਸੰਪਾਦਨ ਸੰਰਚਨਾ ਲਈ YAML ਨਾਟਕੀ ਤੌਰ 'ਤੇ JSON ਨਾਲੋਂ ਵਧੇਰੇ ਪੜ੍ਹਨਯੋਗ ਹੈ। ਇੰਡੈਂਟੇਸ਼ਨ ਬਰੇਸ ਨੇਸਟਿੰਗ ਦੀ ਥਾਂ ਲੈਂਦੀ ਹੈ, ਕੋਟਸ ਸਧਾਰਨ ਸਤਰ ਲਈ ਵਿਕਲਪਿਕ ਹਨ, ਅਤੇ ਟਿੱਪਣੀਆਂ ਗੈਰ-ਸਪੱਸ਼ਟ ਸੈਟਿੰਗਾਂ ਨੂੰ ਦਸਤਾਵੇਜ਼ ਬਣਾ ਸਕਦੀਆਂ ਹਨ। ਉਹਨਾਂ ਫਾਈਲਾਂ ਲਈ ਜੋ ਮਨੁੱਖ ਦੁਆਰਾ ਬਣਾਈ ਰੱਖਦੇ ਹਨ — ਐਪਲੀਕੇਸ਼ਨ ਸੰਰਚਨਾ, ਬੁਨਿਆਦੀ ਢਾਂਚਾ-ਕੋਡ, ਬਿਲਡ ਪਾਈਪਲਾਈਨਾਂ — YAML ਲਗਭਗ ਹਮੇਸ਼ਾਂ ਸਹੀ ਮੰਜ਼ਿਲ ਫਾਰਮੈਟ ਹੁੰਦਾ ਹੈ।
ਆਧੁਨਿਕ ਬੁਨਿਆਦੀ ਢਾਂਚਾ ਟੂਲਿੰਗ ਬਹੁਤ ਜ਼ਿਆਦਾ YAML ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਕੁਬਰਨੇਟਸ, ਹੈਲਮ ਚਾਰਟ, ਜਵਾਬਦੇਹ, ਗਿੱਟਹਬ ਐਕਸ਼ਨ, ਗਿਟਲੈਬ ਸੀਆਈ, ਡੌਕਰ ਕੰਪੋਜ਼, ਅਤੇ ਹੋਰ ਬਹੁਤ ਸਾਰੇ ਟੂਲ ਜਾਂ ਤਾਂ YAML ਨੂੰ ਤਰਜੀਹ ਦਿੰਦੇ ਹਨ ਜਾਂ ਲੋੜੀਂਦੇ ਹਨ। ਇੱਕ ਸਿਸਟਮ ਤੋਂ JSON ਨਿਰਯਾਤ ਨੂੰ ਦੂਜੇ ਲਈ YAML ਸੰਰਚਨਾ ਵਿੱਚ ਬਦਲਣਾ ਇੱਕ ਰੁਟੀਨ ਏਕੀਕਰਣ ਕਦਮ ਹੈ।
JSON ਪੇਸਟ ਕਰੋ, YAML ਪ੍ਰਾਪਤ ਕਰੋ।
js-yaml ਦਾ ਡੰਪ ਫੰਕਸ਼ਨ JavaScript ਆਬਜੈਕਟ ਟ੍ਰੀ 'ਤੇ ਚੱਲਦਾ ਹੈ ਅਤੇ ਸੰਰਚਨਾਯੋਗ ਫਾਰਮੈਟਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰਕੇ YAML ਨੂੰ ਛੱਡਦਾ ਹੈ। ਇੰਡੈਂਟ ਡੂੰਘਾਈ, ਲਾਈਨ ਦੀ ਚੌੜਾਈ, ਪ੍ਰਵਾਹ ਸ਼ੈਲੀ ਥ੍ਰੈਸ਼ਹੋਲਡ, ਅਤੇ ਹਵਾਲਾ ਹੈਂਡਲਿੰਗ ਸਾਰੇ ਮਾਪਦੰਡ ਹਨ। ਪੂਰਵ-ਨਿਰਧਾਰਤ ਸੈਟਿੰਗਾਂ 2-ਸਪੇਸ ਇੰਡੈਂਟੇਸ਼ਨ ਦੇ ਨਾਲ ਬਲਾਕ-ਸ਼ੈਲੀ YAML ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ, ਸਭ ਤੋਂ ਆਮ ਪਰੰਪਰਾ।
ਸਤਰ ਦਾ ਹਵਾਲਾ YAML ਦੇ ਨਿਯਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ: ਸਤਰ ਜੋ ਹੋਰ ਕਿਸਮਾਂ (ਨੰਬਰ, ਬੁਲੀਅਨ, ਨਲ, ਮਿਤੀਆਂ) ਵਰਗੀਆਂ ਦਿਖਾਈ ਦਿੰਦੀਆਂ ਹਨ, ਨੂੰ ਸਟ੍ਰਿੰਗ ਵਿਆਖਿਆ ਨੂੰ ਮਜਬੂਰ ਕਰਨ ਲਈ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ; ਵਿਸ਼ੇਸ਼ ਅੱਖਰ (ਕੋਲਨ, ਹੈਸ਼, ਮੋਹਰੀ ਡੈਸ਼) ਵਾਲੀਆਂ ਸਤਰਾਂ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ; ਸਧਾਰਨ ਵਰਣਮਾਲਾ ਦੀਆਂ ਸਤਰਾਂ ਬਿਨਾਂ ਹਵਾਲੇ ਰਹਿ ਗਈਆਂ ਹਨ।
ਆਉਟਪੁੱਟ YAML 1.2 ਅਨੁਕੂਲ ਹੈ ਅਤੇ js-yaml, PyYAML, ਅਤੇ ਹੋਰ ਪ੍ਰਮੁੱਖ YAML ਲਾਇਬ੍ਰੇਰੀਆਂ ਨਾਲ ਸਾਫ਼-ਸਾਫ਼ ਪਾਰਸ ਕਰਦੀ ਹੈ। Idempotent round-trips (JSON → YAML → JSON) ਡੇਟਾ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਦੇ ਹਨ, ਹਾਲਾਂਕਿ YAML ਨੁਮਾਇੰਦਗੀ ਕੈਨੋਨੀਕਲ ਫਾਰਮੈਟਿੰਗ ਦੀ ਚੋਣ ਕਰਦੀ ਹੈ ਜੋ ਹੱਥ-ਲਿਖਤ ਸਮਾਨ ਤੋਂ ਵੱਖ ਹੋ ਸਕਦੀ ਹੈ।