جميع الأدلة

DEVOMNITOOLS / أدلة المطورين

تحويل CSV إلى JSON مع الحفاظ على المعرّفات

حوّل CSV محلياً بأمثلة للأصفار الأولية والفواصل داخل الاقتباسات واستنتاج الأنواع. تحقق من النتيجة قبل التصدير.

DevOmniTools نُشر: 3 دقائق للقراءة

النقاط الأساسية

  • عطّل استنتاج الأنواع عندما يجب أن تبقى المعرّفات نصوصاً.
  • ضع الحقول المحتوية على فواصل بين اقتباسين وضاعف الاقتباسات الداخلية.
  • تحقق من JSON وراجع السجلات قبل التنزيل.

ابدأ بعينة صغيرة

مخطط معالجة وتحويل CSV إلى JSON مع الحفاظ على المعرفات RFC 4180

افتح محول CSV إلى JSON وألصق المثال التالي. اختر الفاصلة محدداً للحقول. عطّل خيار تحليل الأرقام والقيم المنطقية عندما يجب أن تبقى أرقام الحسابات أو الرموز البريدية نصوصاً.

account_id,name,active
00123,"Rivera, Ana",true
00456,"Lee ""Sam""",false

الفاصلة داخل الاسم المحاط باقتباسين جزء من الحقل نفسه. يمثل اقتباسان مزدوجان متتاليان اقتباساً حرفياً واحداً. عند تعطيل استنتاج الأنواع تبقى الأعمدة الثلاثة نصوصاً:

[
  {"account_id":"00123","name":"Rivera, Ana","active":"true"},
  {"account_id":"00456","name":"Lee \"Sam\"","active":"false"}
]

ميّز الأرقام عن المعرّفات

فعّل استنتاج الأنواع فقط عندما يناسب التحويل التلقائي التطبيق المستهدف. قد يتحول المعرّف 00123 إلى 123 فتضيع أصفاره الأولية. يحدد اقتباس حقل CSV صياغته ولا يفرض نوعاً نصياً دائماً. إذا احتجت أرقاماً في أعمدة ومعرّفات في أخرى، احتفظ بالنصوص أثناء التحويل ثم حوّل الأعمدة المطلوبة صراحة في تطبيقك.

افحص النتيجة قبل التصدير

راجع معاينة الجدول وعدد السجلات. ابحث عن القيم الفارغة والأعمدة غير المتوقعة وتحذيرات تكرار العناوين. تعرض المعاينة جزءاً من البيانات الكبيرة، لذا افحص الملف المصدّر أيضاً. افتح منسق JSON للتحقق من الصياغة. يتطلب JSON اقتباس أسماء الخصائص ولا يقبل التعليقات أو الفواصل النهائية. لا يثبت نجاح فحص الصياغة صحة قواعد العمل أو معنى البيانات.

اختبر التطبيق المستهدف

للتحويل العكسي استخدم وضع JSON إلى CSV بالمحدد نفسه. أعد استيراد عينة في التطبيق المستهدف وقارن المعرّفات والأسماء. لا يحتفظ CSV بمخطط للأنواع؛ قد يحوّل برنامج الجداول المعرّفات إلى أرقام أو يعامل الخلايا البادئة بعلامة = كصيغ. تعامل بحذر مع بيانات الجداول غير الموثوقة. تعمل المعالجة الأساسية محلياً، بينما يرسل الذكاء الاصطناعي الاختياري المحتوى المحدد خارجياً بعد الموافقة.

الحالات الخاصة للمواصفة RFC 4180 وحماية حقن الصيغ (DDE)

عند تحويل السجلات الجدولية بين الأنظمة المختلفة، يجب على المطورين الحذر من مشكلتين تقنيتين شائعتين:

  1. معالجة الحقول متعددة الأسطر (RFC 4180): تتيح المواصفة القياسية إدراج فواصل أسطر حقيقية داخل الحقول المقتبسة بعلامات تنصيص. يؤدي التقسيم الساذج للنصوص إلى تفتيت العناوين أو الأوصاف الطويلة وظهور أسطر تالفة. تحافظ المحللات القوية على حالة التشفير عبر حدود الذاكرة.
  2. حقن الصيغ التلقائية (ثغرات CSV / DDE): عند تصدير ملفات CSV لبرامج الجداول مثل Microsoft Excel، فإن الخلايا التي تبدأ برموز =, +, -, أو @ قد تُنفذ أوامر وصيغاً برمجية غير متوقعة. احرص دائماً على إضافة فاصلة عليا قبل الرموز المشبوهة عند التصدير.
  3. دقة الأرقام الصحيحة الكبيرة (64-bit): غالباً ما تتجاوز معرّفات قواعد البيانات الرقمية حد الدقة الآمن في جافاسكريبت (Number.MAX_SAFE_INTEGER, $2^53-1$). تعطيل التحويل التلقائي يضمن بقاء المعرّفات الطويلة كنصوص بدقة 100% دون فقدان أو تقريب.

معايير إدارة البيانات الحساسة وتكامل الذاكرة المؤقتة

عند تصدير بيانات المعاملات المالية أو سجلات المستخدمين بين تنسيقات CSV و JSON، يجب على فرق الهندسة مراعاة المعايير التالية:

  • التعامل مع النصوص المشفرة وحقول Base64: غالباً ما تتضمن السجلات الحديثة رموز استيثاق أو تجزئات مشفرة تحتوي على أحرف غير قياسية. احرص على استخدام ترميز UTF-8 القياسي بدون علامة ترتيب البايتات (BOM) لضمان توافق أدوات سطر الأوامر مثل jq و awk.
  • الحد الأدنى لاستهلاك الذاكرة في المتصفح: يتم تشغيل خوارزميات التحويل عبر خيوط معالجة خلفية (Web Workers) تمنع تجميد واجهة المستخدم أثناء معالجة الجداول التي تحتوي على آلاف السجلات.
  • التدقيق الدوري لمطابقة الأعمدة: قبل دمج البيانات في بحيرات البيانات (Data Lakes) أو مستودعات PostgreSQL، تأكد من مطابقة أسماء الحقول وملاءمتها للمخطط البرمجي المتوقع.