แปลง CSV เป็น JSON ในเบราว์เซอร์ของคุณ
เปลี่ยนตารางสเปรดชีตให้เป็นอาร์เรย์ของวัตถุ JSON ที่คีย์โดยแถวส่วนหัว
ไฟล์ของคุณและความเป็นส่วนตัวของคุณ
ตารางถูกแปลงภายในแท็บเบราว์เซอร์นี้ และ JSON สร้างขึ้นโดยของคุณเอง
อุปกรณ์ ไม่มีจุดสิ้นสุดการอัปโหลด รหัสเครื่องมือไม่มีการร้องขอการพกพาไฟล์
วางข้อความหรือผลลัพธ์ที่สร้างขึ้น คำขอสคริปต์การวิเคราะห์ที่เปิดเผยจะแยกจากกันและเป็น
อธิบายไว้ในนโยบายความเป็นส่วนตัวของเว็บไซต์
เครื่องมือนี้ทำอะไรได้บ้าง
แปลงตาราง CSV เป็น JSON: หนึ่งวัตถุต่อแถวข้อมูล คีย์ตามชื่อส่วนหัว เขียน
เป็นอาร์เรย์ระดับบนสุด ชื่อส่วนหัวที่ว่างเปล่าจะกลายเป็นคีย์ตำแหน่งและชื่อที่ซ้ำกัน
ต่อท้ายแทนที่จะเขียนทับกัน การแปลงทำงานในลักษณะอื่นด้วย
การแปลงจะเปลี่ยนแต่ละแถวข้อมูลเป็นวัตถุ JSON หนึ่งรายการ โดยใช้แถวส่วนหัวสำหรับคีย์
และเขียนตารางเป็นอาร์เรย์ระดับบนสุดที่มีการเยื้องด้วยช่องว่างสองช่อง เซลล์ส่วนหัวว่างเปล่า
กลายเป็นคีย์ตำแหน่ง เช่น column_3 และชื่อที่ปรากฏสองครั้งจะใช้ตัวเลข
ส่วนต่อท้ายเพื่อให้คอลัมน์ที่สองเก็บข้อมูลไว้แทนที่จะเขียนทับคอลัมน์แรก ทุกคุณค่า
ถูกเขียนเป็นสตริง เนื่องจากไฟล์ CSV ไม่มีข้อมูลประเภทที่จะแปลง
วิธีการใช้งาน
-
เลือก เลือกไฟล์ CSV หรือ JSON แล้วโหลดตารางของคุณ หรือวางแถวลงไปโดยตรง
-
ตรวจสอบว่าแถวแรกเป็นส่วนหัวจริงๆ โดยชื่อจะกลายเป็นคีย์เหมือนกันทุกประการ
เขียน ช่องว่างและตัวพิมพ์ใหญ่รวมอยู่ด้วย
-
จัดการกับคำเตือนแถวที่ขาดหายไปก่อน เนื่องจากเซลล์ที่อยู่หลังคอลัมน์ส่วนหัวสุดท้ายมี
ไม่มีกุญแจและไปไม่ถึง JSON
-
เลือกดาวน์โหลด JSON หรือคัดลอก JSON เพื่อวางไว้ที่อื่น ดาวน์โหลด CSV ก็มีเช่นกัน
เมื่อคุณต้องการให้โต๊ะเป็นระเบียบเท่านั้น
ตัวอย่างการใช้งาน
-
กำลังโหลดสเปรดชีตของฟิกซ์เจอร์ทดสอบลงในสคริปต์ที่คาดว่าจะมีอาร์เรย์ของออบเจ็กต์
-
เปลี่ยนผลิตภัณฑ์หรือรายการราคาที่ส่งออกไปเป็นไฟล์ JSON สำหรับการสร้างไซต์แบบคงที่
- การรวมการตอบกลับ JSON API ที่บันทึกไว้ลงในตารางที่คุณสามารถเปิดในสเปรดชีตได้
สิ่งที่เครื่องมือนี้จะไม่ทำ
-
ทุกค่าจะถูกเขียนเป็นสตริง ตัวเลข 42 กลายเป็นข้อความ 42 และเป็นจริงกลายเป็น
ข้อความเป็นจริง; ไม่มีการอนุมานประเภทและไม่มีตัวเลือก
-
เซลล์ว่างจะกลายเป็นสตริงว่าง ไม่เป็นโมฆะ ดังนั้นโค้ดที่ให้ค่าเริ่มต้นเมื่อใด
ค่าเป็นโมฆะจะไม่ระบุไว้ที่นี่
-
เซลล์ที่อยู่นอกเหนือความกว้างของส่วนหัวจะไม่มีคีย์และถูกละทิ้ง พวกเขาถูกรายงานว่ามอมแมม
กำลังโหลด และนั่นคือคำเตือนให้ดำเนินการ
-
แถวแรกจะเป็นส่วนหัวเสมอ ดังนั้นไฟล์แบบไม่มีส่วนหัวจะบริจาคบันทึกแรกให้กับ
ชื่อคีย์
-
เอาต์พุตเป็นอาร์เรย์แบบแบนของวัตถุแบบแบน: ส่วนหัวเช่น user.name ยังคงเป็นตัวอักษร
คีย์ที่มีจุดอยู่ และชื่อที่ซ้ำกันจะได้รับ _2 และ _3
ข้อผิดพลาดทั่วไป
-
ป้อนเอาต์พุตให้กับโค้ดที่คาดหวังตัวเลข การเพิ่มสตริงของตัวเลขจะเชื่อมต่อกัน
มันหรือให้ NaN แทนที่จะทำให้เกิดข้อผิดพลาด ดังนั้นจุดบกพร่องจึงห่างไกลจาก
การแปลง
-
คาดว่าจะใช้ตัวเลือกสูตรฉีดที่ปลอดภัยที่นี่ เป็นของผู้เขียน CSV
ดังนั้นค่าที่ขึ้นต้นด้วยเครื่องหมายเท่ากับถึง JSON ไม่เปลี่ยนแปลงและเป็นสูตร
อีกครั้งหาก JSON นั้นถูกเขียนกลับออกมาเป็น CSV
-
การแปลงไฟล์ที่รายงานแถวที่ขาดและสมมติว่าทุกเซลล์มาถึง: ส่วนเกิน
เซลล์แสดงในหน้าตัวอย่างแต่ไปไม่ถึง JSON
-
สมมติว่าคอลัมน์ส่วนหัวที่ซ้ำกันจะเขียนทับคอลัมน์แรก จะมีการเปลี่ยนชื่อดังนั้นข้อมูล
นั่งอยู่ใต้กุญแจ ไม่มีใครอ่านอยู่
หมายเหตุทางเทคนิค
CSV แยกวิเคราะห์ทำงานใน Web Worker โดยใช้เครื่องสถานะ RFC 4180 ที่เขียนด้วยมือ ดังที่ยกมา
ตัวคั่นและบรรทัดใหม่ภายในช่องที่ยกมาได้รับการแก้ไขก่อนที่จะเริ่มการแปลง กุญแจ
ถูกคำนวณหนึ่งครั้งจากส่วนหัว และแต่ละแถวจะถูกแมปตามตำแหน่ง ดังนั้นจึงไม่มีเซลล์
กลายเป็นสตริงว่างแทนที่จะเป็นคีย์ขาด และทุกออบเจ็กต์จะมีคีย์เดียวกัน
ชุด ทิศทางย้อนกลับจะสร้างคอลัมน์จากการรวมคีย์เข้าด้วยกันกับออบเจ็กต์ทั้งหมด
ลำดับที่เห็นครั้งแรก
คำถามที่พบบ่อย
- ตัวเลขถูกแปลงเป็นตัวเลข JSON หรือไม่
-
ไม่ ทุกค่าจะถูกเขียนเป็นสตริง เนื่องจากไฟล์ CSV ไม่มีข้อมูลประเภทและ
การคาดเดาคือวิธีที่ผู้แปลงเปลี่ยนรหัสผลิตภัณฑ์ เช่น 0012 ให้เป็นตัวเลข 12 โยน
ค่าอะไรก็ตามที่อ่าน JSON
- จะเกิดอะไรขึ้นกับคอลัมน์ที่ไม่มีชื่อส่วนหัว?
-
โดยจะได้รับคีย์ตามหมายเลขคอลัมน์ ดังนั้นคอลัมน์ที่สามที่มีส่วนหัวว่างจึงกลายเป็น
คอลัมน์_3. ข้อมูลจะถูกเก็บไว้และมีเพียงชื่อเท่านั้นที่ถูกสร้างขึ้น ดังนั้นให้เปลี่ยนชื่อคอลัมน์ก่อนหาก
คุณต้องการกุญแจจริง
- ฉันสามารถแปลง JSON กลับเป็น CSV ได้หรือไม่
-
ใช่. โหลดไฟล์ .json ที่มีอาร์เรย์ออบเจ็กต์ระดับบนสุดและจะกลายเป็นตาราง
คอลัมน์คือการรวมกันของคีย์ในทุกออบเจ็กต์ตามลำดับที่เห็นครั้งแรกและซ้อนกัน
ค่าถูกเขียนลงในเซลล์เป็นข้อความ JSON