tigtools

محوّل CSV إلى JSON

الصق نص CSV أو افتح ملفًا لتحصل على مصفوفة JSON من الكائنات أو المصفوفات. تجري المعالجة في متصفحك، لذا لا تغادر البيانات جهازك.

تعمل في متصفحك لا يلزم التسجيل

تنسيق الإخراج

كيفية الاستخدام

  1. الصق نص CSV، أو افتح ملف .csv أو .tsv، أو اضغط على «جرّب مثالًا».
  2. اترك خيار «الكشف التلقائي» محددًا أو اختر الفاصل بنفسك، وحدد ما إذا كان الصف الأول يحتوي على أسماء الأعمدة.
  3. يمكنك اختياريًا تفعيل كشف الأرقام والقيم المنطقية وnull، واختيار إخراج على شكل كائنات أو مصفوفات.
  4. انسخ JSON أو نزّله كملف .json.

كيف تعمل الأداة

يتبع المحلّل المواصفة RFC 4180 الخاصة بـ CSV: يمكن إحاطة الحقول بعلامتي اقتباس مزدوجتين، ويمكن أن يحتوي الحقل المحاط بعلامتي اقتباس على الفاصل وفواصل الأسطر، وتمثّل علامتا اقتباس مزدوجتان داخل الحقل المحاط بعلامتي اقتباس علامة اقتباس واحدة. يمكن أن تكون فواصل الأسطر CRLF (Windows) أو LF (macOS وLinux) أو CR، ولا تؤدي فاصلة السطر الأخيرة إلى إنشاء سجل فارغ. تُتخطى الأسطر الفارغة تمامًا. تُزال علامة ترتيب البايتات الموجودة في بداية الملف، والتي يضيفها Excel غالبًا. إذا لم تُغلق علامة اقتباس لحقل ما، فستظهر رسالة خطأ توضح رقم السطر الذي يبدأ فيه، لأن التخمين قد يؤدي بصمت إلى دمج بقية الملف في خلية واحدة.

تجرّب آلية الكشف التلقائي الفاصلة والفاصلة المنقوطة وعلامة الجدولة والشرطة العمودية على الأسطر الأولى، ثم تختار الفاصل الذي ينتج عددًا متسقًا من الأعمدة. عند وجود صف للعناوين، يتحول كل سجل إلى كائن تكون مفاتيحه أسماء الأعمدة؛ وتُسمّى الأسماء الفارغة column_1 وcolumn_2… وتُضاف لاحقة إلى الأسماء المكررة، مثل id_2. تحصل الصفوف التي تحتوي على حقول أقل من صف العناوين على قيم فارغة، بينما تُمنح الحقول الإضافية أسماء أعمدة إضافية.

تظل كل قيمة، افتراضيًا، سلسلة نصية، وهو الخيار الأكثر أمانًا: إذ يحافظ على الأصفار في بداية الرموز البريدية مثل 01234 وأرقام الهواتف والمعرّفات. عند تفعيل كشف الأنواع، تتحول القيم المكتوبة تمامًا بصيغة أرقام JSON إلى أرقام (باستثناء قيم مثل 007 و1,5 والأعداد الصحيحة التي تتجاوز 2^53)، وتتحول true وfalse بأي حالة أحرف إلى قيم منطقية، كما تتحول null أو الخلية الفارغة إلى null. وتظل التواريخ نصوصًا.

أمثلة

تصدير جدول بيانات

id,name,price\n1,Desk,149.90 يتحول إلى [{"id":"1","name":"Desk","price":"149.90"}]. وعند تفعيل كشف الأنواع، يتحول إلى {"id":1,"name":"Desk","price":149.9}.

ملفات Excel الأوروبية

يستخدم الملف المحفوظ بواسطة Excel في ألمانيا الفواصل المنقوطة: Name;Preis\nTisch;149,90. يختار الكشف التلقائي الفاصلة المنقوطة، وتبقى 149,90 السلسلة النصية "149,90" لأنها ليست رقمًا بصيغة JSON.

خلايا تحتوي على فواصل أسطر

تبقى خلية العنوان المكتوبة بالشكل "221B Baker Street London" (بين علامتي اقتباس وتمتد على سطرين) قيمة واحدة، "221B Baker Street\nLondon"، بدلًا من بدء صف جديد.

الأسئلة الشائعة

لماذا تظهر الأرقام كسلاسل نصية في JSON؟

لا يتضمن CSV أنواعًا للبيانات، لذا تُحفظ كل قيمة افتراضيًا كنص كما كُتبت تمامًا. فعّل «كشف الأرقام وtrue/false وnull» لتحويل القيم التي تبدو أرقامًا. وتُحفظ الأصفار في بداية القيم والفواصل العشرية على شكل نص لتجنب تغيير البيانات.

ماذا يحدث إذا احتوى الصف على أعمدة أكثر أو أقل من صف العناوين؟

تتحول القيم المفقودة إلى سلاسل فارغة (أو إلى null عند تفعيل كشف الأنواع). وتُحفظ القيم الإضافية ضمن مفاتيح إضافية بأسماء مثل column_N، فلا تُحذف أي بيانات.

هل يمكنها قراءة ملفات Excel بصيغة .xlsx؟

لا، يدعم الأداة ملفات CSV وTSV النصية فقط. في Excel أو Google Sheets، استخدم «ملف › حفظ باسم» أو «تنزيل › CSV» أولًا، ثم افتح الملف هنا.

ما أكبر حجم ملف يمكنني تحويله؟

تُحوَّل الملفات التي يبلغ حجمها عدة ميغابايتات في لحظات على جهاز كمبيوتر مكتبي. يعتمد الحد على ذاكرة جهازك، إذ يُحتفظ بالملف كاملًا ونتيجة JSON في علامة تبويب المتصفح.

الخصوصية

تُقرأ بيانات CSV وتُحوّل في متصفحك فقط. لا تُرفع الملفات التي تفتحها، ولا تُخزّن أي بيانات أو تُرسل إلى أدوات التحليلات.