แปลงจาก CSV เป็น JSON
CSV คือรูปแบบข้อมูลที่ได้จากสเปรดชีตหรือการส่งข้อมูลออกจากฐานข้อมูล ในขณะที่ JSON เป็นรูปแบบที่ API, ฟรอนเทนด์ JavaScript และไฟล์กำหนดค่าสมัยใหม่ต้องการ โปรแกรมแปลงนี้จะรับไฟล์ CSV ที่มีแถวหัวข้อ (header row) และสร้างอาร์เรย์ของออบเจกต์ JSON โดยแต่ละแถวหัวข้อจะกลายเป็นคีย์ และแต่ละแถวข้อมูลจะกลายเป็นออบเจกต์หนึ่งรายการ ผลลัพธ์จะถูกแสดงในรูปแบบที่เหมาะสมโดยใช้ Unicode แบบไม่เข้ารหัสและเครื่องหมาย slash แบบปกติ ทำให้สามารถนำไปวางตรงลงในคำขอของ Postman หรือไฟล์ JavaScript ได้ทันที
วิธีที่ไฟล์ CSV ถูกแปลงเป็น JSON
-
1
วางไฟล์ CSV เข้าไป
ต้องมีแถวหัวข้อมูลอย่างน้อยหนึ่งแถว และแถวข้อมูลอย่างน้อยหนึ่งแถว หากไม่เป็นเช่นนั้น เครื่องมือจะแสดงข้อผิดพลาด
-
2
แถวหัวข้อกำหนดคีย์
แถวที่ 1 ถูกวิเคราะห์โดยใช้ `str_getcsv` และชื่อคอลัมน์หลังจากตัดพื้นที่ว่างออกจะกลายเป็นคีย์ในรูปแบบ JSON
-
3
แต่ละแถวข้อมูลจะกลายเป็นออบเจกต์หนึ่งรายการ
ค่าจะถูกจัดเรียงให้ตรงกับหัวข้อตามตำแหน่ง ส่วนเซลล์ที่ขาดหายจะแสดงเป็นสตริงว่าง
-
4
คัดลอก JSON ที่สวยงามนี้
ได้รับการจัดรูปแบบด้วย JSON_PRETTY_PRINT, JSON_UNESCAPED_UNICODE และ JSON_UNESCAPED_SLASHES เพื่อให้อ่านได้อย่างชัดเจนในทุกโปรแกรมแก้ไข
วิธีที่ระบบแปลงข้อมูลจัดการกับประเภทข้อมูลและกรณีพิเศษต่างๆ
โดยพื้นฐานแล้ว CSV เป็นข้อมูลแบบไม่มีประเภท (typeless): เซลล์ทุกเซลล์เป็นสตริง ในขณะที่ JSON มีประเภทข้อมูลที่ชัดเจน โปรแกรมแปลงข้อมูลจะเลือกใช้วิธีที่ปลอดภัยมากกว่า โดยคงค่าทุกค่าไว้ในรูปแบบสตริง JSON, คุณจะไม่พบกรณีที่ตัวเลขถูกแปลงเป็นข้อความโดยไม่แสดงผล หรือรหัสประจำตัวที่เริ่มด้วยศูนย์ถูกละเว้นการแสดงศูนย์นำหน้า
ตัวอย่าง
นำเข้าไฟล์ CSV:
name,age,email
Alice,30,alice@example.com
Bob,25,bob@example.com
ผลลัพธ์ในรูปแบบ JSON:
[
{ "name": "Alice", "age": "30", "email": "alice@example.com" },
{ "name": "Bob", "age": "25", "email": "bob@example.com" }
]
โปรดทราบว่า age เป็นสตริง ไม่ใช่ตัวเลข หากคุณต้องการข้อมูลในรูปแบบตัวเลข สามารถประมวลผลเพิ่มเติมด้วย Number(row.age) ใน JavaScript หรือใช้เครื่องมือแปลงข้อมูลจาก CSV เป็น JSON ซึ่งมีตัวเลือกในการกำหนดประเภทข้อมูลที่หลากหลายกว่า
กรณีขอบเขต
| สถานการณ์ | พฤติกรรม |
|---|---|
| แถวข้อมูลว่าง | ถูกข้ามไปโดยไม่แสดงผล เนื่องจากไม่มีออบเจกต์ที่ว่างในผลลัพธ์ |
| แถวสั้นกว่าหัวข้อ | ฟิลด์ที่ขาดหายไปจะถูกแสดงเป็นสตริงว่าง |
| แถวที่ยาวกว่าส่วนหัว | เซลล์ที่เกินจะถูกลบออกไป |
| ชื่อหัวข้อที่ซ้ำกัน | คีย์ในเวอร์ชันถัดไปจะเขียนขึ้นมาแทนคีย์ก่อนหน้าในออบเจกต์ที่ได้ |
| หัวข้อพร้อมพื้นที่ว่างรอบข้าง | ถูกตัดแต่งก่อนนำไปใช้เป็นคีย์ |
เลือกใช้เครื่องมือแปลง CSV เป็น JSON อีกตัวเมื่อใด
นี่คือตัวแปลงที่ใช้งานง่าย โดยมีค่าเริ่มต้นที่เหมาะสม และไม่มีตัวเลือกเพิ่มเติม หากคุณต้องการใช้เครื่องหมายคั่นอื่นที่ไม่ใช่จุลภาค ปิดแถวหัวข้อ หรือสลับรูปแบบการแสดงผลระหว่างแบบกระชับและแบบสวยงาม ให้ใช้ตัวแปลง CSV เป็น JSON
คำถามที่พบบ่อย
ไม่ใช่จากตัวแปลงง่ายๆ นี้ เนื่องจากค่าทุกค่าจะถูกส่งออกมาในรูปแบบสตริง JSON โดยคงรหัสประจำตัว (ID) เช่น 00123 และค่าทศนิยม เช่น 1.50 ไว้อย่างแม่นยำตามที่ปรากฏจริง ให้ดำเนินการประมวลผลเพิ่มเติมด้วย Number() หรือ parseFloat() ในระบบผู้ใช้งาน หรือใช้ตัวแปลง CSV เป็น JSON อีกตัวหนึ่งเพื่อเลือกตัวเลือกเพิ่มเติม
เครื่องมือนี้ต้องใช้ข้อมูลหัวเรื่อง (header) โดยใช้ชื่อของหัวเรื่องเป็นคีย์ในรูปแบบ JSON หากไฟล์ของคุณไม่มีหัวเรื่อง ให้เพิ่มแถวหนึ่งที่มีชื่ออย่าง col1,col2,col3 ไว้ด้านบน หรือเปลี่ยนมาใช้โปรแกรมแปลงข้อมูลจาก CSV เป็น JSON ซึ่งมีตัวเลือกสำหรับปิดการใช้งานหัวเรื่อง
ตัวอักษร Unicode จะไม่ถูกแปลงเป็นรหัส escape (เครื่องหมายเน้นเสียง อักษร CJK รวมถึงอีโมจิ จะปรากฏตามตัวอักษรจริงในผลลัพธ์) เครื่องหมายทับ (/) ก็ไม่ถูกแปลงเป็นรหัส escape เช่นกัน ทำให้ URL ดูเป็นธรรมชาติ ส่วนเครื่องหมายอัญประกาศคู่ภายในค่าจะถูกแปลงอย่างถูกต้องเป็น \"
ใช่ ไฟล์ CSV จะถูกส่งไปยังเซิร์ฟเวอร์ของเราเพื่อสร้าง JSON ไฟล์จะไม่ถูกจัดเก็บและไม่ถูกเพิ่มลงในลิงก์ของหน้าเว็บ
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
เครื่องมือตรวจสอบหมายเลขโทรศัพท์
ตรวจสอบโครงสร้างหมายเลขตามประเทศ พร้อมดูภูมิภาค ประเภท และรูปแบบ E.164 ระหว่างประเทศ ในประเทศ และ RFC 3966
เครื่องมือนี้มีให้บริการในภาษาอื่น
- CSV till JSON [SV]
- 从 CSV 转换为 JSON [ZH]
- CSVからJSONへ [JA]
- CSV en JSON [FR]
- Van CSV naar JSON [NL]
- CSV'den JSON'a [TR]
- CSV إلى JSON [AR]
- CSV do JSON [PL]
- CSV를 JSON으로 [KO]
- CSV to JSON [EN]
- CSV para JSON [PT]
- CSV zu JSON [DE]
- CSV a JSON [ES]
- CSV ke JSON [ID]
- Chuyển từ CSV sang JSON [VI]
- CSV in JSON [IT]
- От CSV к JSON [RU]