แปลง CSV เป็น JSON
- 62 เครื่องมือ
- ไม่มีลายน้ำ
- ไม่จำกัดจำนวนไฟล์
สร้าง JSON จากไฟล์ CSV หรือข้อความที่วางลงไป ได้อาร์เรย์ที่มีหนึ่งออบเจกต์ต่อหนึ่งแถว ใช้หัวคอลัมน์เป็นคีย์ หรือได้อาร์เรย์ของอาร์เรย์ถ้าไฟล์ไม่มีหัวคอลัมน์ ทุกค่ายังเป็นข้อความ เว้นแต่คุณสั่งให้อ่านเป็นตัวเลข และถึงอย่างนั้นก็เปลี่ยนเฉพาะค่าที่อ่านกลับมาแล้วได้เหมือนเดิมทุกตัวอักษร 0812345678 จึงยังมีศูนย์นำหน้า 007 ยังเป็น 007 และ 12.50 ไม่ถูกตัดเหลือ 12.5 ไฟล์ภาษาไทยจาก Excel อ่านถูกไม่ว่า Excel จะเข้ารหัสแบบไหน และไม่มีอะไรออกจากเบราว์เซอร์ของคุณ
1 · ไฟล์ CSV
2 · ตัวเลือก
ปิดตัวเลือกนี้ถ้าแถวแรกเป็นข้อมูล
เฉพาะค่าที่อ่านกลับมาแล้วได้เหมือนเดิม: 42 และ -3.5 ได้ แต่ 007, 0812345678, 1,234 และ 12.50 ไม่เปลี่ยน
ตัวอย่าง
CSV นี้:
ชื่อ,เบอร์โทร,จังหวัด
สมชาย ใจดี,0812345678,"เชียงใหม่, ช้างคลาน"
มะลิ รักไทย,0898765432,ภูเก็ต
ได้ผลลัพธ์เป็น:
[
{
"ชื่อ": "สมชาย ใจดี",
"เบอร์โทร": "0812345678",
"จังหวัด": "เชียงใหม่, ช้างคลาน"
},
{
"ชื่อ": "มะลิ รักไทย",
"เบอร์โทร": "0898765432",
"จังหวัด": "ภูเก็ต"
}
]
ตัวเลือกอ่านตัวเลขทำอะไรกับค่าแต่ละแบบ
| ใน CSV | ปิดตัวเลือก | เปิดตัวเลือก |
|---|---|---|
300 | "300" | 300 (ตัวเลข) |
-45.5 | "-45.5" | -45.5 (ตัวเลข) |
0812345678 | "0812345678" | "0812345678" (ยังเป็นข้อความ) |
007 | "007" | "007" (ยังเป็นข้อความ) |
12.50 | "12.50" | "12.50" (ยังเป็นข้อความ) |
1,250.00 | "1,250.00" | "1,250.00" (ยังเป็นข้อความ) |
1234567890123456 | "1234567890123456" | "1234567890123456" (ยังเป็นข้อความ) |
ค่าจะกลายเป็นตัวเลขก็ต่อเมื่อ JSON ให้ค่าเดิมกลับมาครบทุกตัวอักษร เลขศูนย์นำหน้า ศูนย์ท้ายทศนิยม เครื่องหมายคั่นหลักพัน หรือจำนวนหลักที่เกินกว่าตัวเลขใน JSON จะเก็บได้ ทำให้ค่านั้นยังเป็นข้อความ
คำถามที่พบบ่อย
JSON ที่ได้หน้าตาเป็นยังไง
เป็นอาร์เรย์ที่มีหนึ่งออบเจกต์ต่อหนึ่งแถว ในแต่ละออบเจกต์ใช้หัวคอลัมน์เป็นคีย์ เช่น [{"ชื่อ": "สมชาย", "เบอร์โทร": "0812345678"}, …] ถ้าแถวแรกเป็นข้อมูล ไม่ใช่ชื่อคอลัมน์ ให้ติ๊กตัวเลือกนั้นออก จะได้อาร์เรย์ของอาร์เรย์แทน แถวละหนึ่งอาร์เรย์ ทุกค่าอยู่ตำแหน่งเดิมโดยไม่ต้องตั้งชื่อคอลัมน์ขึ้นมาเอง
ทำไมตัวเลขของฉันมีเครื่องหมายคำพูดครอบ
เพราะไฟล์ CSV ไม่ได้บอกว่าค่าไหนเป็นตัวเลข และการเดาคือทางที่ข้อมูลเสียหาย เบอร์โทร 0812345678 ถ้าอ่านเป็นตัวเลขจะเหลือ 812345678 รหัสสินค้า 007 เหลือ 7 และ 12.50 เหลือ 12.5 ทุกค่าจึงเป็นข้อความ เว้นแต่คุณติ๊กตัวเลือกไว้ และแม้ติ๊กแล้วก็เปลี่ยนเฉพาะค่าที่อ่านกลับมาแล้วได้เหมือนเดิมทุกตัวอักษร ถ้าคอลัมน์นั้นเป็นรหัส เช่น เลขบัตรประชาชน ให้ปิดตัวเลือกนี้ไว้ แม้เลขจะบังเอิญไม่มีศูนย์นำหน้าก็ตาม
ชื่อคอลัมน์ที่ซ้ำกันหรือว่างจะเป็นยังไง
ออบเจกต์ใน JSON มีคีย์ซ้ำกันไม่ได้ คอลัมน์ที่สองที่ชื่อ Phone จึงกลายเป็น Phone_2 และคอลัมน์ที่ไม่มีหัวกลายเป็น column_3 ที่เหลือคงไว้ตามที่พิมพ์ทุกตัวอักษร รวมถึงเว้นวรรคและภาษาไทย เพราะคีย์ของ JSON เป็นข้อความอะไรก็ได้ หน้านี้แสดงทุกชื่อที่เปลี่ยน
เซลล์ว่างจะเป็นอะไร
เซลล์ว่างเป็นข้อความว่าง "" ไม่ได้ถูกทำเครื่องหมายว่าไม่มีค่า เพราะไฟล์ CSV แยกไม่ออกว่าค่าว่างกับค่าที่ไม่มีต่างกันยังไง การทำเครื่องหมายจึงเป็นการเดา แถวที่สั้นกว่าหัวตารางได้ข้อความว่างในคอลัมน์ที่ขาด ทุกออบเจกต์จึงมีคีย์ชุดเดียวกัน
CSV ของฉันมีภาษาไทย จะออกมาถูกไหม
ถูก ระบบตรวจการเข้ารหัสแทนการเดา รู้จัก UTF-8, UTF-8 ที่มี BOM, Windows-874 (ที่ Excel เขียนบนเครื่องภาษาไทย) และ UTF-16 (ตัวเลือก "Unicode Text" ของ Excel) JSON ที่ได้เป็น UTF-8 เสมอ และภาษาไทยเขียนเป็นภาษาไทย ไม่ใช่รหัส \u0e0a จึงยังอ่านออก
ไฟล์ของฉันถูกอัปโหลดไหม
ไม่ เบราว์เซอร์ของคุณเป็นตัวอ่าน CSV และเขียน JSON เอง นโยบายความปลอดภัยของเว็บกำหนด connect-src ‘none’ เบราว์เซอร์จึงบล็อกการเรียกเครือข่ายจากหน้านี้ ต่อให้โค้ดอยากส่งออกไปก็ส่งไม่ได้ รายชื่อลูกค้าหรือไฟล์เงินเดือนไม่ควรถูกส่งให้เว็บไซต์ไหนแปลง
รับไฟล์ใหญ่ได้แค่ไหน
ได้ทุกขนาด ระบบอ่านไฟล์ทีละส่วนและเขียน JSON ทีละส่วน ไฟล์ที่ใหญ่กว่าหน่วยความจำของเครื่องก็ทำได้ บนหน้าจอแสดงผลลัพธ์ 200 KB แรก ไฟล์ที่ดาวน์โหลดมีครบทั้งหมด
ตรวจหรือจัดรูปแบบ JSON ที่ได้ต่อได้ไหม
ได้ ตัวจัดรูปแบบ JSON ของเว็บนี้ตรวจและจัดรูปแบบให้ และบอกตำแหน่งที่ผิดให้ตรง ๆ ถ้ามี ส่วนหน้า JSON กับ XML แปลงต่อเป็น XML ได้