DevToolPal
ไทย

แปลง YAML เป็น JSON

แปลง YAML เป็น JSON และ JSON เป็น YAML รองรับ anchor ไฟล์หลายเอกสาร และบอกตำแหน่งข้อผิดพลาดที่แม่นยำ

ทำงานในเครื่อง ไม่มีการอัปโหลด

ตัวเลือก

ทิศทาง
การเยื้อง

อินพุต

0 ตัวอักษร · 0 B

เอาต์พุต

0 ตัวอักษร · 0 B

เครื่องมือนี้ทำอะไร

เครื่องมือนี้แปลง YAML เป็น JSON และ JSON เป็น YAML YAML นิยมใช้สำหรับคอนฟิก (Kubernetes, Docker Compose, GitHub Actions, สเปก OpenAPI) เพราะอ่านและเขียนด้วยมือได้ง่าย ส่วน JSON คือสิ่งที่โปรแกรม API และเบราว์เซอร์ส่วนใหญ่ใช้ การแปลงระหว่างสองรูปแบบช่วยให้คุณตรวจสอบคอนฟิก ส่งต่อให้สคริปต์ หรือเปลี่ยน API response ให้เป็นไฟล์คอนฟิกที่อ่านง่าย

วิธีใช้งาน

  1. วาง YAML ลงในช่อง อินพุต ลากไฟล์ .yaml หรือ .yml มาวาง หรือคลิก ตัวอย่าง
  2. JSON จะปรากฏทางขวาขณะพิมพ์ เลือกเยื้อง 2 หรือ 4 ช่องว่าง
  3. สลับ ทิศทาง เป็น JSON → YAML เพื่อแปลงอีกทาง สตริงยาวจะไม่ถูกตัดบรรทัด ค่าจึงอยู่ในบรรทัดเดียว
  4. คัดลอกหรือดาวน์โหลดผลลัพธ์

หาก YAML ไม่ถูกต้อง ข้อความแจ้งข้อผิดพลาดจะแสดงบรรทัดและคอลัมน์ และคลิกเพื่อย้ายเคอร์เซอร์ไปที่นั่นได้ ข้อผิดพลาดที่พบบ่อยคือ การเยื้องไม่สม่ำเสมอ ใช้ Tab ในการเยื้อง ลืมเว้นวรรคหลังโคลอน และคีย์ซ้ำกันใน mapping เดียวกัน

ตัวอย่าง

name: devtools
ports:
  - 80
  - 443
database:
  host: db.internal

จะกลายเป็น

{
  "name": "devtools",
  "ports": [80, 443],
  "database": { "host": "db.internal" }
}

สิ่งที่ควรรู้เกี่ยวกับ YAML

YAML เดาชนิดข้อมูลจากค่าธรรมดา: 3 เป็นตัวเลข true เป็นบูลีน null และ ~ หมายถึง null และ 1.2.0 ยังคงเป็นสตริงเพราะไม่ใช่ตัวเลขที่ถูกต้อง ครอบค่าด้วยเครื่องหมายคำพูดเมื่อต้องการให้เป็นข้อความ เช่น รหัสไปรษณีย์อย่าง "01234" Anchor (&name) และ alias (*name) ช่วยให้นำบล็อกกลับมาใช้ซ้ำได้ ตัวแปลงจะขยายออกเป็นสำเนาเต็มใน JSON Block scalar ที่เขียนด้วย | จะคงการขึ้นบรรทัดใหม่ไว้ ส่วน > จะพับบรรทัดรวมเป็นย่อหน้าเดียว

คำถามที่พบบ่อย

› YAML ของฉันถูกส่งไปยังเซิร์ฟเวอร์หรือไม่?

ไม่ ตัว parse YAML ทำงานในเบราว์เซอร์ของคุณ manifest ของ Kubernetes, ไปป์ไลน์ CI และไฟล์คอนฟิกที่มีข้อมูลลับจึงไม่ออกจากอุปกรณ์ของคุณ

› รองรับ YAML เวอร์ชันไหน?

YAML 1.2 ซึ่งเป็นมาตรฐานปัจจุบัน รวมถึง anchor และ alias, คอลเลกชันแบบ block และ flow, สตริงหลายบรรทัด และคอมเมนต์

› ไฟล์ที่มีหลายเอกสารจะเป็นอย่างไร?

เอกสารที่คั่นด้วย `---` จะถูกแปลงเป็นอาร์เรย์ JSON ที่มีหนึ่งสมาชิกต่อหนึ่งเอกสาร เอกสารว่างหลัง `---` ตัวสุดท้ายจะถูกข้าม

› คอมเมนต์ถูกเก็บไว้ไหมเมื่อแปลง JSON เป็น YAML?

JSON ไม่มีคอมเมนต์ จึงไม่มีอะไรให้เก็บ เมื่อแปลง YAML เป็น JSON คอมเมนต์จะถูกทิ้งเพราะ JSON แสดงคอมเมนต์ไม่ได้