JSON سے YAML کنورٹر
JSON کو ایسے YAML میں تبدیل کریں جسے لوگ آسانی سے پڑھ سکیں، ریویو کر سکیں اور اس پر تبصرے لکھ سکیں۔ .json فائلیں اپ لوڈ کریں اور انڈینٹ شدہ .yaml حاصل کریں۔ اس میں وہی keys، وہی ویلیوز اور وہی ترتیب ہوگی، اور یہ ریپوزٹری میں رکھنے کے لیے تیار ہوگا۔
ڈیٹا کنورٹر
یا CSV, TSV, TXT … فائلیں یہاں ڈراپ کریں ·
زیادہ سے زیادہ 95 MB فی فائل· 20 فائلوں تک· 30 منٹ بعد حذف
فائلیں ہمارے سرورز پر پروسیس ہوتی ہیں اور 30 منٹ بعد حذف ہو جاتی ہیں۔
وہ حرف جو CSV اور متنی فائلوں میں کالموں کو الگ کرتا ہے، پڑھنے اور لکھنے دونوں کے لیے۔ خودکار اسے ان پٹ سے پہچانتا ہے اور کاما لکھتا ہے۔
UTF-8 ہر زبان کے لیے کام کرتا ہے۔ اگر Windows پر Excel میں CSV کھولنے پر اعراب یا ایشیائی حروف بگڑے نظر آئیں تو BOM کے ساتھ UTF-8 چنیں۔
Excel، ODS اور Numbers ان پٹ: صرف پہلی شیٹ تبدیل کریں، یا تمام شیٹس (ZIP میں ہر شیٹ کی ایک CSV، یا ہر شیٹ کی ایک JSON کی)۔
نئی اسپریڈ شیٹ میں شیٹ ٹیب کا نام، زیادہ سے زیادہ 31 حروف۔
آبجیکٹس کی ارے ہر قطار کے لیے کالم کے ناموں کو کیز بناتی ہے؛ ارے کی ارے زیادہ مختصر ہے اور ہیڈر کو پہلی ارے کے طور پر رکھتی ہے۔
بیرونی ایلیمنٹ کا نام جو تمام قطاروں کو لپیٹتا ہے؛ ہر قطار اس کے اندر <row> بنتی ہے۔
CREATE TABLE اور INSERT اسٹیٹمنٹس میں استعمال ہوتا ہے۔ صرف حروف، ہندسے اور انڈر اسکور۔
کوٹنگ اور کالم کی اقسام ڈیٹابیسز میں تھوڑی مختلف ہوتی ہیں؛ وہ چنیں جس میں امپورٹ کرنا ہے۔
تاریخ کے خانوں کو ایک فارمیٹ میں دوبارہ لکھیں۔ ڈیٹابیسز اور کوڈ کے لیے ISO (2026-10-18) سب سے محفوظ ہے؛ جوں کا توں رکھیں انہیں ماخذ کی طرح چھوڑتا ہے۔
اس ٹول کو استعمال کرنے کا طریقہ
- 1
JSON فائلیں شامل کریں
API ریسپانسز، ایکسپورٹ کی گئی سیٹنگز یا تیار کردہ مینی فیسٹس کو .json کی شکل میں اپ لوڈ کریں، زیادہ سے زیادہ 20 فائلیں اور ہر فائل 95 MB تک۔ ہر فائل میں ایک درست JSON ویلیو ہونی چاہیے۔
- 2
ڈیفالٹ سیٹنگز برقرار رکھیں
YAML پہلے ہی اس میں تبدیل کریں کے تحت منتخب ہے۔ کنفیگ فائل کے لیے کچھ اور بدلنے کی ضرورت نہیں؛ آؤٹ پٹ میں دو اسپیس کی انڈینٹیشن استعمال ہوتی ہے۔
- 3
تبدیل کریں اور کمٹ کریں
YAML میں تبدیل کریں دبائیں، .yaml فائلیں ڈاؤن لوڈ کریں، جہاں اگلے پڑھنے والے کو ضرورت ہو وہاں تبصرے شامل کریں اور کمٹ کر دیں۔
JSON کو YAML میں کیسے تبدیل کریں؟
.json فائل اپ لوڈ کریں اور YAML میں تبدیل کریں دبائیں۔ آبجیکٹس انڈینٹ شدہ key: value بلاکس بن جاتے ہیں، ارے ڈیشز والی فہرستیں بن جاتے ہیں، اور وہ اسٹرنگز جنہیں YAML غلط پڑھ سکتا ہے اپنے کوٹس برقرار رکھتی ہیں۔
کنفیگ فائلوں کے لیے JSON کو YAML میں کیوں تبدیل کریں
زیادہ تر JSON سافٹ ویئر بناتا ہے: API ریسپانس، سیٹنگز ایکسپورٹ یا جنریٹر کی آؤٹ پٹ۔ زیادہ تر YAML انسان سنبھالتے ہیں۔ یہ تبدیلی عموماً اس لمحے کی علامت ہوتی ہے جب ڈیٹا مشین کی آؤٹ پٹ نہیں رہتا اور ٹیم کی ملکیت بن جاتا ہے، جیسے Git میں چیک اِن کیا گیا ڈیپلائمنٹ مینی فیسٹ، CI پائپ لائن یا Ansible ویری ایبلز کا سیٹ۔
ایک عام صورت: آپ کلاؤڈ API کو کال کرتے ہیں، کسی وسائل کی 200 لائنوں کی JSON تفصیل ملتی ہے، اور آپ اسے انفراسٹرکچر کوڈ کے طور پر رکھنا چاہتے ہیں۔ تبدیلی سے بریکٹس اور کاماز کے بغیر فائل ملتی ہے، جہاں ایک لائن کی تبدیلی ایک لائن کا ڈف بناتی ہے اور آپ عجیب ویلیوز کی وضاحت تبصروں میں کر سکتے ہیں۔ یہی بات ٹیسٹ فکسچرز اور ان ترجمہ فائلوں پر لاگو ہے جنہیں غیر ڈویلپرز ایڈٹ کرتے ہیں۔ جب اسپریڈشیٹ یا رپورٹ کے لیے سادہ جدول چاہیے ہو تو JSON سے CSV زیادہ موزوں ہے۔
وہ ٹولز جن کی کنفیگ فائلیں YAML میں ہوتی ہیں
| ادارہ | تقاضا | ماخذ |
|---|---|---|
| GitHub Actions | ورک فلوز .github/workflows میں .yml یا .yaml فائلوں کی شکل میں رہتے ہیں | GitHub Docs |
| GitLab CI/CD | پائپ لائن ریپازٹری کی روٹ میں .gitlab-ci.yml میں بیان کی جاتی ہے | GitLab Docs |
| Docker Compose | سروسز compose.yaml میں بیان ہوتی ہیں (پہلے docker-compose.yml) | Docker Docs |
| Ansible | پلے بکس اور ویری ایبل فائلیں YAML میں لکھی جاتی ہیں | Ansible Docs |
| Kubernetes | مینی فیسٹس JSON یا YAML قبول کرتے ہیں؛ دستاویزات اور Helm چارٹس YAML استعمال کرتے ہیں | Kubernetes |
مشکل ویلیوز کے ساتھ JSON سے YAML کی مثال
name: api version: "1.10" debug: false tags: - web - eu country: "NO" # کوٹس کے بغیر NO کو false پڑھا جاتا ہے
YAML سے کیا ملتا ہے
- # کے ساتھ تبصرے
- کوڈ ریویو میں چھوٹے ڈف
- زیادہ تر لائنوں میں بریکٹس، کاماز یا کوٹس نہیں
- | بلاک اسکیلرز کے ساتھ کئی لائنوں کا متن
کن باتوں کا خیال رکھیں
- انڈینٹیشن کا مطلب ہے، اس لیے ایک فالتو اسپیس ڈھانچہ بدل دیتی ہے
- انڈینٹیشن کے لیے ٹیبز کی اجازت نہیں
- بغیر کوٹس کی اسٹرنگز کو نمبر یا بولین سمجھا جا سکتا ہے
- JSON کے مقابلے میں سست اور کم یکساں پارسرز
یہ مثال بتاتی ہے کہ بریکٹس کو محض ڈھونڈ کر بدل دینا کافی کیوں نہیں۔ ورژن 1.10 JSON میں اسٹرنگ ہے؛ YAML میں بغیر کوٹس لکھا جائے تو نمبر 1.1 سمجھا جائے گا۔ NO، ناروے کا ISO کوڈ، PyYAML جیسے YAML 1.1 پارسرز میں false پڑھا جائے گا۔ دونوں اپنے کوٹس برقرار رکھتے ہیں، جبکہ اصل نمبر اور بولین بغیر کوٹس رہتے ہیں۔
JSON اور YAML کا موازنہ
JSON
جاوا اسکرپٹ آبجیکٹ نوٹیشن
JSON منظم ڈیٹا کے لیے ہلکا پھلکا ٹیکسٹ فارمیٹ ہے، جسے Douglas Crockford نے 2000 کی دہائی کے اوائل میں مقبول کیا اور جو RFC 8259 اور ECMA-404 کے طور پر معیاری ہے۔ یہ آبجیکٹس، ارریز، اسٹرنگز، نمبرز، بولینز اور null کو سادہ، پڑھنے کے قابل نحو میں ظاہر کرتا ہے۔ یہ تقریباً ہر پروگرامنگ زبان میں ویب APIs، کنفیگریشن فائلوں اور ایپس کے درمیان ڈیٹا کے تبادلے کا ڈیفالٹ فارمیٹ ہے۔ اس میں تبصرے، تاریخیں یا اسکیمے بلٹ اِن نہیں، اور بڑی گہری فائلیں ویور کے بغیر پڑھنا مشکل ہوتا ہے۔
- کمپریشن
- –
- شفافیت
- –
- اینیمیشن
- –
- متعارف ہونے کا سال
- 2001 · Douglas Crockford
YAML
YAML
YAML ("YAML Ain't Markup Language") انسانوں کے لیے آسان ڈیٹا فارمیٹ ہے جو پہلی بار 2001 میں جاری ہوا۔ یہ بریکٹس کی جگہ انڈینٹیشن استعمال کرتا ہے، کمنٹس کو سپورٹ کرتا ہے اور JSON کا سپر سیٹ ہے۔ یہ Docker Compose، Kubernetes، GitHub Actions اور بہت سی ایپلیکیشنز کی کنفیگریشن میں عام ہے۔ خالی جگہ پر انحصار کی وجہ سے ایک غلط جگہ پر اسپیس سے بھی یہ خراب ہو سکتا ہے، اور "no" یا تاریخوں جیسی کچھ ویلیوز کی تشریح غیر متوقع طور پر ہو سکتی ہے۔
- کمپریشن
- –
- شفافیت
- –
- اینیمیشن
- –
- متعارف ہونے کا سال
- 2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
لوگ JSON کو YAML میں اس وقت تبدیل کرتے ہیں جب تیار کردہ یا API کا ڈیٹا ایسی کنفیگ فائل بننا ہو جسے انسان سنبھالیں، پل ریکویسٹس میں ریویو کریں اور تبصروں کے ساتھ واضح کریں۔
JSON سے YAML کنورٹر کے بارے میں سوالات
کیا JSON پہلے سے ہی درست YAML ہے؟
YAML 1.2 کے تحت ہاں: 2009 کا ورژن اس طرح لکھا گیا تھا کہ ہر JSON دستاویز ایک YAML دستاویز بھی ہو۔ آپ JSON کو .yaml فائل میں پیسٹ کر سکتے ہیں اور زیادہ تر ٹولز اسے قبول کر لیں گے۔ تبدیلی کا مقصد پڑھنے میں آسانی ہے: بریکٹس، کوٹس اور کاماز کے بغیر بلاک اسٹائل وہ ہے جس کی ریویورز اور اگلے مینٹینر کو توقع ہوتی ہے۔
YAML میں کچھ ویلیوز کوٹس میں کیوں لکھی جاتی ہیں؟
کیونکہ کوٹس کے بغیر YAML انہیں مختلف قسم کی ویلیو سمجھ لے گا۔ 1.10 جیسی ورژن اسٹرنگ نمبر 1.1 بن جائے گی، اور پرانے پارسرز میں yes یا off بولین بن سکتے ہیں۔ جو اسٹرنگز نمبر، تاریخ یا بولین جیسی لگیں انہیں اسٹرنگ رہنے کے لیے کوٹس چاہییں، اس لیے محتاط تبدیلی انہیں برقرار رکھتی ہے۔
کیا تبدیلی کے بعد میں تبصرے شامل کر سکتا ہوں؟
جی ہاں، اور تبدیل کرنے کی ایک عام وجہ یہی ہے۔ لائن کے آخر میں یا الگ لائن پر # لکھ کر اپنا نوٹ لکھیں۔ JSON میں یہ بتانے کا کوئی طریقہ نہیں تھا کہ کوئی ویلیو کیوں رکھی گئی ہے؛ YAML میں ہے، جس سے ریویو اور ہینڈ اوور آسان ہو جاتے ہیں۔
میرا YAML ٹیب کریکٹر کی ایرر کیوں دیتا ہے؟
YAML اسپیسیفکیشن انڈینٹیشن کے لیے ٹیبز کی اجازت نہیں دیتی؛ صرف اسپیس معتبر ہیں۔ کنورٹر اسپیس لکھتا ہے، لیکن ٹیبز ڈالنے والا ایڈیٹر اگلی ایڈٹ پر فائل خراب کر سکتا ہے۔ اپنے ایڈیٹر کو .yaml فائلوں کے لیے اسپیس استعمال کرنے پر سیٹ کریں۔
کیا Kubernetes تبدیل شدہ مینی فیسٹ قبول کرے گا؟
kubectl JSON اور YAML دونوں پڑھتا ہے، اس لیے ڈیٹا ہر صورت میں وہی رہتا ہے؛ YAML ورژن بس وہ ہے جو زیادہ تر دستاویزات، Helm چارٹس اور کوڈ ریویوز میں استعمال ہوتا ہے۔ اگر بعد میں jq یا API کال کے لیے JSON واپس چاہیے ہو تو YAML سے JSON اسے الٹ دیتا ہے۔
- YAML سے JSON کنورٹر.yaml اور .yml فائلوں کو APIs اور ویلیڈیٹرز کے لیے JSON میں تبدیل کریں۔ ترتیب شدہ آؤٹ پٹ، 20 فائلیں ایک ساتھ، فائلیں 30 منٹ میں حذف۔
- JSON سے XML کنورٹرJSON کو آن لائن XML میں تبدیل کریں: کیز ایلیمنٹس، ارے دہرائے گئے ایلیمنٹس، سب آپ کے نام والے روٹ ٹیگ میں۔ صاف فارمیٹ، اکاؤنٹ کے بغیر۔
- JSON کو CSV میں تبدیل کریںJSON یا JSON Lines سے CSV: ہر آبجیکٹ ایک قطار، نیسٹڈ فیلڈز کالمز میں، UTF-8 مع BOM تاکہ Excel حروف درست دکھائے۔ ایک بار میں 20 فائلیں۔
- XML سے JSON کنورٹرXML کو پڑھنے کے قابل JSON میں بدلیں: ایٹریبیوٹس @ کیز، دہرائے گئے ٹیگز ارے، متن برقرار۔ SOAP جوابات، فیڈز اور پرانی ایکسپورٹس کے لیے۔
- JSON سے Base64 انکوڈرJSON فائل کو Kubernetes Secrets، CI ویری ایبلز، API پے لوڈ اور ٹوکنز کے لیے Base64 کی ایک لائن بنائیں۔ بائٹ بہ بائٹ واپس، اختیاری data URI۔
- JSON سے Excel کنورٹرJSON یا JSON Lines کو Excel XLSX شیٹ میں تبدیل کریں: کیز کالم ہیڈر اور ہر ریکارڈ ایک قطار بنتا ہے۔ ایک بار میں 20 فائلیں، اکاؤنٹ کے بغیر۔