แปลง INI เป็น JSON

การแปลงไฟล์กำหนดค่า INI แบบแบนให้เป็นออบเจ็กต์ JSON ที่มีโครงสร้าง ช่วยให้เว็บแอปสมัยใหม่แยกวิเคราะห์ข้อมูลการตั้งค่าได้โดยตรง

เลือกหรือวางไฟล์ที่นี่

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

หรือวาง Ctrl+V

ระหว่างรอไฟล์ คุณเล่น Code Rain ได้เลย

รับประกันความเป็นส่วนตัวโดยไม่มีการส่งข้อมูลผ่านเครือข่าย: อัปโหลด 0 ไบต์ไปยังเซิร์ฟเวอร์ภายนอก การประมวลผลทั้งหมดเกิดขึ้นภายในแซนด์บ็อกซ์ของเบราว์เซอร์ของคุณ

การเปรียบเทียบรูปแบบและข้อกำหนดทางเทคนิค

ข้อกำหนดINIJSON
ประเภท MIMEtext/plainapplication/json
ประเภทการกำหนดค่าเริ่มต้นออบเจ็กต์ข้อมูลแบบมีโครงสร้าง
การบีบอัดไม่มี (ข้อความธรรมดา)ไม่มี (สตรีมข้อความ)
ข้อกำหนดมาตรฐานรูปแบบการกำหนดค่า INI ของ WindowsIETF RFC 8259 / ECMA-404
ส่วนหัวที่ระบุลายเซ็นไฟล์[SectionName] Property=Value7B (\{) or 5B (\[) JSON root delimiter

ภาพรวมรูปแบบและการใช้งาน

นักพัฒนาซอฟต์แวร์มักจะต้องย้ายการตั้งค่าแอปพลิเคชันรุ่นเก่าจากรูปแบบ INI แบบดั้งเดิมไปยังโครงสร้างสัญกรณ์ออบเจ็กต์ JavaScript สมัยใหม่ เครื่องมือเดสก์ท็อปและแอปพลิเคชัน Windows รุ่นเก่าพึ่งพาไฟล์ INI เป็นอย่างมากเนื่องจากมนุษย์สามารถอ่านและแก้ไขได้ง่ายในโปรแกรมแก้ไขข้อความ อย่างไรก็ตาม บริการเว็บสมัยใหม่ โครงสร้างพื้นฐานบนคลาวด์ และเฟรมเวิร์ก JavaScript ไม่สามารถอ่านไฟล์ INI ได้โดยตรงโดยไม่มีตัวแยกวิเคราะห์เฉพาะ การย้ายข้อมูลการตั้งค่าจาก INI ไปยัง JSON จะช่วยแก้ปัญหาความเข้ากันได้ระหว่างสภาพแวดล้อมการเขียนโปรแกรมที่แตกต่างกัน ในขณะที่ไฟล์ INI จัดกลุ่มการตั้งค่าโดยใช้ส่วนหัวหมวดหมู่และคู่คีย์-แวลูง่ายๆ แต่ JSON จะจัดระเบียบข้อมูลเป็นออบเจ็กต์และอาร์เรย์ที่ซ้อนกัน การอัปเกรดโครงสร้างนี้ช่วยให้นักพัฒนาสามารถจัดการกับการตั้งค่าที่ซับซ้อน รายการไอเทม และประเภทข้อมูลบูลีนได้โดยไม่ต้องเขียนลอจิกการแยกวิเคราะห์เพิ่มเติม

ข้อกำหนดทางเทคนิคและรายละเอียดตัวแปลงสัญญาณ

การตั้งค่า INI ใช้ MIME type เป็น text/plain โดยไม่มีลายเซ็นไบต์เริ่มต้น (magic byte) มาตรฐาน โดยอาศัยส่วนหัวหมวดหมู่ที่มีวงเล็บ เช่น [settings] และการขึ้นบรรทัดใหม่มาตรฐาน ไฟล์คอนฟิก JSON ใช้ MIME type เป็น application/json และแสดงข้อมูลเป็นสตรีมข้อความที่มีโครงสร้างซึ่งอยู่ภายในวงเล็บปีกกา ทั้งสองรูปแบบใช้การเข้ารหัสข้อความ UTF-8 หรือ ASCII ที่ไม่ได้บีบอัด เนื่องจากกระบวนการแปลงนี้แมปคีย์ข้อความแบบแบนเข้ากับต้นไม้ข้อมูลที่มีโครงสร้าง จึงไม่มีการบีบอัดข้อมูล และกระบวนการนี้ไม่มีการสูญเสียข้อมูลสำหรับข้อความของคีย์และค่า

ความเข้ากันได้ของระบบปฏิบัติการและเบราว์เซอร์

ทั้งรูปแบบ INI และ JSON ทำงานได้บนระบบปฏิบัติการสมัยใหม่ส่วนใหญ่ เช่น Windows, macOS, Linux, iOS และ Android เว็บเบราว์เซอร์สมัยใหม่สามารถแยกวิเคราะห์สตริง JSON ได้โดยตรงโดยใช้เอนจิ้น JavaScript ในตัวผ่าน JSON.parse() ในขณะที่ไฟล์ INI จำเป็นต้องใช้ไลบรารีของบุคคลที่สามหรือสคริปต์แยกวิเคราะห์แบบกำหนดเองเพื่อให้ทำงานภายในเว็บเบราว์เซอร์ได้ การรองรับยังขึ้นอยู่กับแอป อุปกรณ์ ระบบปฏิบัติการ และเวอร์ชันด้วย

เคล็ดลับการใช้งาน

ควรตรวจสอบความถูกต้องของไฟล์ JSON ผลลัพธ์ของคุณด้วยตัวตรวจสอบไวยากรณ์ (linter) หลังจากการแปลงเสมอ เพื่อให้แน่ใจว่าเครื่องหมายคำพูดและเครื่องหมายจุลภาคทั้งหมดถูกวางไว้อย่างถูกต้อง เนื่องจาก JSON มีความเข้มงวดเรื่องไวยากรณ์มากกว่า INI มาก

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

จะแปลงการตั้งค่า INI เป็นคอนฟิก JSON โดยไม่ให้คุณภาพลดลงได้อย่างไร?

การแปลงนี้ไม่มีการสูญเสียข้อมูลใดๆ เนื่องจากทั้งสองรูปแบบจัดเก็บการตั้งค่าข้อความธรรมดา กระบวนการจะอ่านคีย์ข้อความ ค่า และหมวดหมู่จากไฟล์ INI และแมปไปยังออบเจ็กต์และอาร์เรย์ JSON โดยไม่มีการตัดข้อมูลใดๆ ทิ้ง

ความแตกต่างระหว่างการตั้งค่า INI และคอนฟิก JSON คืออะไร?

INI ใช้เลย์เอาต์แบบแบนที่มีหัวข้อหมวดหมู่และคู่คีย์-แวลูซึ่งรองรับเฉพาะสตริงข้อความพื้นฐาน ส่วน JSON ใช้โครงสร้างต้นไม้ลำดับชั้นที่รองรับออบเจ็กต์ซ้อน อาร์เรย์ ตัวเลข ค่าบูลีน และค่า null