เริ่มจากโครงสร้างข้อมูล
JSON แทนออบเจ็กต์ อาร์เรย์ ข้อความ ตัวเลข ค่าตรรกะ และ null ส่วน CSV เป็นตารางของช่องข้อมูลและระเบียน โดยไม่มีระบบชนิดข้อมูลแบบเดียวกัน ใช้ CSV เมื่อต้องการแถวและคอลัมน์ที่สม่ำเสมอ เก็บ JSON ไว้เมื่อมีออบเจ็กต์ซ้อนกันหรือรายการยาวไม่เท่ากัน ตารางที่ดูสะอาดไม่ได้พิสูจน์ว่าความสัมพันธ์เดิมยังอยู่ครบ
เก็บรหัสเป็นข้อความ
รหัสอย่าง 00127 เป็นตัวระบุ ไม่จำเป็นต้องหมายถึงเลข 127 ให้เก็บเป็นข้อความและนำเข้าคอลัมน์สเปรดชีตเป็นข้อความเช่นกัน หมายเลขโทรศัพท์และรหัสตัวเลขที่ใหญ่มากก็ต้องระวัง ตัวเลข JavaScript ปกติไม่สามารถแทนจำนวนเต็มทุกค่าที่เกิน 9,007,199,254,740,991 ได้อย่างแม่นยำ หากความแม่นยำสำคัญ ให้ใช้ข้อความในเครื่องหมายคำพูดหรือเครื่องมือที่รองรับช่วงตัวเลขนั้นโดยชัดเจน
ให้ตัวแยกวิเคราะห์อ่าน CSV
จุลภาคในช่องที่ครอบด้วยเครื่องหมายคำพูดเป็นข้อมูล ไม่ใช่ตัวแบ่งคอลัมน์ ช่องนั้นอาจมีการขึ้นบรรทัดใหม่ และเครื่องหมายคำพูดภายในต้องเขียนแบบ escape การแยกทุกบรรทัดด้วยจุลภาคจึงไม่เพียงพอ ตรวจตัวคั่น แถวหัวตาราง ชื่อคอลัมน์ซ้ำ และจำนวนช่องข้อมูลของแต่ละระเบียนก่อนแปลง อย่าทิ้งแถวที่ตรวจสอบไม่ผ่านโดยไม่แจ้ง
กำหนดวิธีจับคู่ค่าที่ซ้อนกัน
คำสั่งซื้อที่มีสินค้าหลายรายการต้องมีกฎส่งออกชัดเจน อาจแยกตารางสินค้าโดยมีรหัสคำสั่งซื้อ หรือเก็บรายการเป็นข้อความ JSON ในเซลล์เดียว การทำให้ออบเจ็กต์แบนอาจสร้างชื่อกำกวมเมื่อคีย์มีตัวคั่นอยู่แล้ว บันทึกการจับคู่และใช้กฎเดิมตอนนำกลับเข้า การจัดรูปแบบหรือเรียงคีย์ของออบเจ็กต์ไม่เหมือนการเปลี่ยนลำดับในอาร์เรย์
ทดลองแปลงไปกลับด้วยตัวอย่างเล็กก่อน
แปลงตัวอย่างที่เป็นตัวแทน นำกลับเข้า แล้วเปรียบเทียบจำนวนระเบียนกับค่าบางรายการ ใส่อักขระมีเครื่องหมายกำกับ ข้อความว่าง null เครื่องหมายคำพูด และข้อความหลายบรรทัดด้วย เมื่อต้องเปิด CSV ที่ไม่น่าเชื่อถือในสเปรดชีต ให้ตรวจเซลล์ที่อาจถูกตีความเป็นสูตรและใช้ตัวเลือกนำเข้าเป็นข้อความ เก็บต้นฉบับกับการตั้งค่าไว้ การตรวจเหล่านี้พบการเปลี่ยนความหมายที่ข้อความดาวน์โหลดสำเร็จบอกไม่ได้
www.rfc-editor.org · developer.mozilla.org
