DevToys Web Pro iconDevToys Web Proบล็อก
ให้คะแนนเรา:
ลองใช้ส่วนขยายเบราว์เซอร์:

ตัวแปลง JSON <> TOML

การกำหนดค่า

  • การเยื้อง

JSON

  • TOML

  • Loading editor...
    Loading editor...
    รายละเอียดทางเทคนิค

    ตัวแปลง JSON ↔ TOML ทำงานอย่างไร

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

    ตัวแปลง JSON ↔ TOML แปลงข้อมูลระหว่างรูปแบบ JSON และ TOML (Tom's Obvious, Minimal Language) โดยคงโครงสร้างและค่าของข้อมูลไว้ ตัวแปลงนี้รองรับการแปลงสองทิศทาง: json เป็น toml และ toml เป็น json TOML มักใช้สำหรับไฟล์คอนฟิกในโปรเจกต์อย่าง Cargo ของ Rust, Poetry ของ Python และเครื่องมืออื่น ๆ อีกมากมาย ตัวแปลงรองรับการกำหนดการเยื้องสำหรับผลลัพธ์ JSON ทำให้คุณเลือกได้ระหว่างการเยื้อง 2 ช่องว่างหรือ 4 ช่องว่างให้ตรงกับสไตล์ไกด์ของโปรเจกต์

    กรณีการใช้งานทั่วไปของนักพัฒนา

    นักพัฒนาใช้ตัวแปลง JSON TOML เมื่อทำงานกับไฟล์คอนฟิก โดยเฉพาะในโปรเจกต์ Rust (Cargo.toml), โปรเจกต์ Python (pyproject.toml) หรือเมื่อย้ายระหว่างรูปแบบคอนฟิก เครื่องมือสมัยใหม่จำนวนมากใช้ TOML สำหรับคอนฟิก เพราะอ่านง่ายกว่่า JSON สำหรับมนุษย์ แต่ยังคงให้เครื่องอ่านได้ ตัวแปลงมีประโยชน์เมื่อย้ายคอนฟิกระหว่างรูปแบบ ทำให้คอนฟิกเป็นมาตรฐานข้ามเครื่องมือ หรือทำงานกับระบบที่ต้องการรูปแบบเฉพาะ ก่อนแปลง คุณอาจต้องการจัดรูปแบบ JSON ด้วย JSON Formatter หรือจัดรูปแบบ TOML ด้วย TOML Formatter เพื่อให้อ่านง่ายขึ้น ตัวแปลงช่วยเมื่อดีบักปัญหาคอนฟิก เปรียบเทียบรูปแบบ หรือเตรียมข้อมูลสำหรับเครื่องมือต่าง ๆ ที่คาดหวัง JSON หรือ TOML

    รูปแบบข้อมูล ชนิด หรือรูปแบบย่อย

    JSON และ TOML เป็นรูปแบบการทำซีเรียลไลซ์ข้อมูลทั้งคู่ แต่มีไวยากรณ์และความสามารถต่างกัน JSON รองรับอ็อบเจ็กต์ อาร์เรย์ สตริง ตัวเลข บูลีน และ null TOML รองรับชนิดข้อมูลเดียวกัน พร้อมฟีเจอร์เพิ่มเติม เช่น คอมเมนต์ inline tables และ array of tables ตัวแปลงรองรับไวยากรณ์ JSON มาตรฐานและไวยากรณ์ TOML ที่ใช้กันทั่วไป (TOML v1.0.0) ระหว่างการแปลง ฟีเจอร์เฉพาะของ TOML เช่นคอมเมนต์จะหายไปเมื่อแปลงเป็น JSON เนื่องจาก JSON ไม่รองรับคอมเมนต์ TOML inline tables และ array of tables จะถูกแปลงเป็นอ็อบเจ็กต์และอาร์เรย์ของ JSON ตามลำดับ ตัวแปลงคงชนิดข้อมูลไว้ แต่มีบางกรณีขอบ: ชนิด date-time ของ TOML จะถูกแปลงเป็นสตริงใน JSON และโครงสร้างตารางของ TOML จะถูกทำให้แบนเป็นอ็อบเจ็กต์ JSON แบบซ้อน

    ข้อผิดพลาดที่พบบ่อยและกรณีขอบ

    ปัญหาที่พบบ่อยอย่างหนึ่งคือคอมเมนต์ของ TOML จะหายไปเมื่อแปลงเป็น JSON เนื่องจาก JSON ไม่รองรับคอมเมนต์ อีกข้อผิดพลาดคือการจัดการตารางของ TOML: TOML ใช้หัวตารางอย่าง [table]ซึ่งจะถูกแปลงเป็นอ็อบเจ็กต์ JSON แบบซ้อน TOML array of tables (ใช้ [[array]]) จะถูกแปลงเป็นอาร์เรย์ JSON ค่าวันที่และวันเวลาใน TOML จะถูกแปลงเป็นสตริง JSON ในรูปแบบ ISO 8601 เมื่อแปลงโครงสร้างซ้อนขนาดใหญ่ ให้แน่ใจว่าผลลัพธ์ตรงตามที่คาดไว้ โดยเฉพาะกรณีขอบอย่างอาร์เรย์ว่าง ค่า null และอ็อบเจ็กต์ที่ซ้อนลึก TOML inline tables (ใช้ { key = value }) จะถูกแปลงเป็นอ็อบเจ็กต์ JSON

    เมื่อใดควรใช้เครื่องมือนี้แทนการเขียนโค้ด

    ใช้ตัวแปลงนี้สำหรับการแปลงรูปแบบอย่างรวดเร็ว การแปลงแบบครั้งเดียว หรือเมื่อทำงานนอกสภาพแวดล้อมการพัฒนาของคุณ เหมาะสำหรับแปลงไฟล์คอนฟิก เปรียบเทียบรูปแบบ หรือเตรียมข้อมูลสำหรับเครื่องมือต่าง ๆ สำหรับโค้ดที่ใช้จริงในโปรดักชัน ให้ใช้ไลบรารีแปลงที่ผสานรวมอยู่ในแอปของคุณ ซึ่งสามารถจัดการการแปลงรูปแบบเป็นส่วนหนึ่งของ data processing pipeline ได้ ไลบรารีสำหรับพาร์ส TOML และ JSON ให้การจัดการข้อผิดพลาดที่ดีกว่า ความปลอดภัยด้านชนิดข้อมูล และการผสานรวมกับโค้ดเบสของคุณ เครื่องมือบนเบราว์เซอร์เหมาะกับการแปลงแบบเฉพาะกิจและการสำรวจ ขณะที่โซลูชันแบบเขียนโค้ดให้การทำงานอัตโนมัติ การตรวจสอบ และการผสานรวมกับไปป์ไลน์ CI/CD