تحويل JSON المتداخل إلى CSV دون فقد المعرّفات أو المصفوفات
اختر تعريفاً متسلسلاً، وفهم الأعمدة المحروقة والخلايا المصفوفة، ثم تسوي التصدير قبل استيراده إلى صحيفة بيانات.
تقرير ما يمثله صف واحد للناتج
قبل التحول JSON اسم الكيان كل صف يجب أن يصف: زبون أو نظام أو حدث أو سجل آخر. لنا JSON-إلى ...CSV المسطح يقبل جسماً واحداً أو مجموعة من الأشياء على أعلى المستويات. فهو لا يوسع تلقائياً صفائف البنود من ترتيب إلى صفوف منفصلة. إذا سجل أعشاش التصدير الخاصة بك تحت ملكية ملفوفة، اختيار المجموعة المقصودة عمدا قبل العبث بها. أنقذوا الأصلي JSON و سجل هذا الاختيار. ويمكن أن يكون الجدول صالحا تماما بينما يمثل المستوى الخطأ من التفاصيل بالنسبة لنظام الاستلام، لذا يرجى توضيح تعريف الصف أولا.
تعقب الأشياء المستعارة إلى أسماء الأعمدة
تتحول خصائص الكائنات المتداخلة إلى أعمدة تفصل بين أجزائها نقاط. في المثال المدمج، ينتج عن كائن contact الحقلان contact.city وcontact.email. تؤدي معالجة سجليه إلى سبعة أعمدة: name وcontact.city وcontact.email وtags وnote وbalance وcompany. يتبع ترتيب الأعمدة أول ظهور لها عبر السجلات. ويُدرج الحقل الذي يظهر في السجل الثاني أيضًا في الجدول المشترك. راجع عناوين الأعمدة مقارنةً بالمخطط المتوقع لدى النظام المستقبِل؛ فالمسارات الوصفية للمصدر مفيدة للفحص، لكن قد يلزم إعداد ربط منفصل لحقول الوجهة. لا يحدد تسطيح البيانات هذا الربط نيابةً عنك.
الحفاظ على الحقول المفقودة وبطلان واضح
في المظاهرة، (أليكس) ليس لديه contact.email الممتلكات، لذلك الخلية فارغة. ويعتبر توازن أليكس باطلا صراحة، ولذلك يتضمن الجدول النص لاغيا. وتختلف هذه القيم في المصدر وتظل مختلفة بشكل واضح في هذه الأداة. يُمثّل الكائن الفارغ بالرمز {}. التحقق من كيفية تفسير طلب الاستلام لكل اتفاقية قبل الاستيراد. وتتوقع بعض الوجهات خلية فارغة أن تعني مجهولة، بينما يستخدمها آخرون لإزالة الحقل. لا يمكن للمحول أن يستلهم قاعدة العمل هذه. توثق معاملتك المقصودة بدلاً من استبدال كل فارغ أو باطل مع صفر.
اختر عرض صفائف عمدا
الحفاظ على الصفوف JSON تضع المجموعة بأكملها في زنزانة واحدة، بما في ذلك أقواسها والسلاسل المستشهد بها. ولا تزال بطاقات المظاهرة تشكل علامة JSON صفيفة بدلاً من أن تصبح صفائح عملاء منفصلة. توافر طريقة الانضمام للأصناف البدائية باستخدام عموديbar سيدي. هذا العرض أسهل للمسح ولكن يمكن أن يكون غامضا إذا كان سلسلة المصدر تحتوي بالفعل على الانفصال أو إذا كانت القيم الفارغة مهمة. فالصفائف والأجسام المحبة لا تدعم بطريقة الانضمام. الاستخدام JSON الخلايا عندما تحتاج الهيكل المتاح للتفسير في وقت لاحق، وتفحص تدفق العمل المستقبلي بدلا من افتراض أنه يمكن فرز تلك الخلايا.
| قيمة JSON | تمثيل CSV | اختيار للحفاظ على |
|---|---|---|
| contact.city | عمود contact.city | تجنب الاصطدامات الأدبية |
| الممتلكات المفقودة | خلية فارغة | إبطاله |
| التفسير باطل | النص لا ينطبق | التحقق من تفسير الواردات |
| مصفوفة | خلية واحدة متسلسلة أو مشتركة | لا يُنشأ صف لكل عنصر تلقائيًا |
| سلسلة المظهر العددي | محتوى القوة | بطاقات هوية استيراد كنص |

استخدم هذا المثال يفتح JSON إلى CSV مع هذه المدخلات.
حماية محددات الهوية قبل تجزئة الأرقام
هوية مثل 00123 يجب أن يكون اقتباس JSON الخيط عندما يُهمّ الصفر. كما أن هناك حاجة إلى معالجة متعمدة للمعاينة الكبيرة لتحديد الهوية والمبالغ العشرية الدقيقة. MDN الوثائق JSON القيم العددية يمكن أن تفقد الدقة عندما تقطع إلى JavaScript أرقام. وترفض هذه الأداة القيم غير المأمونة للثلاجات، ولكنها لا تعد بالدقة العشرية التعسفية. ضع المعرّفات أو المبالغ الدقيقة بين علامتي اقتباس في ملف التصدير الأصلي عند الحاجة. ولا يمكن لصوغ رقم متضرر كنص بعد التحويل أن يستعيد رقم المصدر. حافظ على هوية معروفة و كمية تمثيلية في العينة التي تتحقق منها قبل تجهيز مجموعة البيانات كاملة.
التفتيش على المقاصة وحماية صحيفة البيانات بشكل منفصل
تضع أداة كتابة CSV الحقول بين علامتي اقتباس، وتضاعف علامات الاقتباس التي تُعد جزءًا من المحتوى. ولذلك يُفترض أن تبقى الملاحظة التي تحتوي على فاصلة أو سطر جديد في خلية واحدة عند تحليلها بقارئ متوافق. يصف RFC 4180 القواعد الشائعة لاستخدام علامات الاقتباس في CSV. أما الحماية من صيغ جداول البيانات فهي تحويل منفصل للمحتوى: تضيف الأداة فاصلة عليا إلى الخلايا المشتبه بها، بما فيها القيم السالبة والعناوين ذات الصلة. توثّق OWASP خطر تفسير برامج الجداول للنصوص الشبيهة بالصيغ. راجع المعاينة الخام والتصدير المحمي كليهما. تغيّر الحماية سلسلة النص الناتجة، ولذلك قد لا تلائم نظامًا يتوقع القيمة الأصلية بحذافيرها.
حوّل الفواصل باستخدام محلل وطابق المعرّفات
إذا كانت الوجهة تتطلب فواصل منقوطة أو علامات جدولة، فاختر الفاصل مباشرةً أو استخدم محوّل فواصل CSV بعد تسطيح البيانات. لا تستبدل الفواصل في النص كله؛ فبعضها جزء من القيم. للمطابقة، استخرج أعمدة المعرّفات من المصدر والوجهة إلى قائمتين، بعنصر واحد في كل سطر، واستخدم أداة مقارنة قائمتين. اختر بعناية كيفية التعامل مع حالة الأحرف والمسافات. تدمج المجموعات العناصر المكررة، بينما يحتفظ جدول التدقيق بأعداد مرات ظهورها. لا يكفي عدد المطابقات وحده للتحقق من قيم كل صف أو ترتيب الصفوف. قارن بعض السجلات الكاملة إلى جانب مجموعات المعرّفات قبل اعتبار الاستيراد مطابقًا.
الاصطدامات اليدوية والتحقق من الواردات المتلقية
قد يتعارض مفتاح حرفي باسم contact.city مع المسار الناتج عن كائن contact متداخل. يرفض محوّل البنية المسطحة تعارضات المسارات النقطية الغامضة بدلًا من اختيار إحدى القيم. أعد تسمية المفاتيح المتعارضة أو عيّنها صراحةً في عملية إعداد المصدر. ابدأ بعينة صغيرة ممثلة تتضمن قيمًا مفقودة ومصفوفات وملاحظات مقتبسة ومعرّفات مهمة. استوردها باستخدام الفاصل وأنواع الأعمدة المطلوبة، ثم قارنها بملف JSON الأصلي. عندما تعمل بصورة صحيحة، سجّل الإعدادات لاستخدامها في التحويل الكامل. نجاح التحليل يثبت إمكانية قراءة بنية التصدير؛ ولا يثبت صحة البيانات الأساسية.