Skip to content

محوّل CSV إلى JSON

حوّل CSV إلى JSON في متصفحك. RFC 4180، استنتاج الأنواع، صف العنوان، أمان الأعداد الكبيرة. خصوصية 100%.

بدون تتبّع يعمل في المتصفّح مجاني
إعداد
الخيارات · , · auto · LF · header · no BOM · flatten
المحدّد
الصف الأول هو العنوان
استنتاج الأنواع (أرقام، منطقية، <bdi>null</bdi>)
0 حرف 0 سطر
إخراج <bdi>JSON</bdi>
0 صف · 0 عمود
تمت المراجعة للتوافق مع RFC 4180، وصحة استنتاج الأنواع، والحفاظ على دقة الأعداد الصحيحة الكبيرة، وسلوك التسمية التلقائية بدون عنوان — Go Tools Engineering Team · May 9, 2026

ما هو JSON ولماذا التحويل من CSV؟

JSON (JavaScript Object Notation) هو الصيغة العالمية لاستجابات API، وملفات الإعدادات، وتبادل البيانات المهيكلة — كل لغة برمجة حديثة، وكل قاعدة بيانات، وكل إطار عمل ويب لها دعم من الدرجة الأولى لـ JSON. CSV (القيم المفصولة بفواصل)، في المقابل، هي أقدم وأكثر صيغ البيانات الجدولية انتشاراً — كل تطبيق جداول، وكل تصدير قاعدة بيانات، وكل أداة تحليلات يمكنها إنتاجها. التحويل بينهما من أكثر المهام شيوعاً في هندسة البيانات: تتلقى CSV من جدول، أو تفريغ قاعدة بيانات، أو تصدير طرف ثالث، وتحتاج JSON لتغذية API، أو ترطيب واجهة أمامية، أو التحميل إلى مخزن NoSQL. هذه الأداة مبنية لمسار التحويل ذلك وتتعامل مع أربعة سيناريوهات تخطئ فيها معظم المحوّلات أونلاين.

تتميز هذه الأداة بأربعة فروقات مهمة مقارنة بمحوّلات CSV إلى JSON النموذجية أونلاين:

**1. محلّل آلة الحالة لـ RFC 4180.** يبدو CSV بسيطاً لكن قواعد الاقتباس دقيقة: يمكن لحقل محاط بعلامات اقتباس مزدوجة أن يحتوي على فواصل، وأسطر جديدة مضمَّنة، وعلامات اقتباس مزدوجة مهرَّبة (مضاعفة، مثل ""). محلّلات «التقسيم بالفاصلة» الساذجة تتعطل على البيانات الواقعية — العناوين بفواصل، والحقول النصية متعددة الأسطر، والقيم المقتبسة المحتوية على علامات اقتباس. تطبّق هذه الأداة محلّل آلة حالة صحيحاً يتبع RFC 4180 (مواصفة IETF لـ CSV)، يتعامل بشكل صحيح مع الحقول المقتبسة، والمحدّدات المضمَّنة، ونهايات الأسطر المضمَّنة، وعلامات الاقتباس المهرَّبة في كل اتجاه. الإخراج يدعم الذهاب والعودة عبر وحدة csv في Python، وPostgreSQL COPY، وAWS S3 SELECT، وأي محلّل متوافق.

**2. استنتاج الأنواع مع أمان الأعداد الصحيحة الكبيرة.** مع تفعيل استنتاج الأنواع، السلاسل العددية تصبح أرقاماً، وtrue/false تصبح قيماً منطقية، والخلايا الفارغة تصبح null. لكن مسار الاستنتاج لديه حارسان مهمان: السلاسل ذات الأصفار البادئة (007، 0123) تبقى سلاسل لأن الأصفار البادئة تشير إلى معرّفات — التحويل إلى رقم سيُسقطها بصمت. والأعداد الصحيحة فوق 2^53 - 1 (9007199254740991) تبقى أيضاً كسلاسل لتجنّب فقدان دقة IEEE 754. معرّفات سنوفليك في Twitter، ومعرّفات Discord، وحقول MongoDB Long، وresourceVersion في K8s تبقى كلها دقيقة بدلاً من تقريبها بصمت. سلاسل تواريخ ISO تُحفظ عمداً كسلاسل — لا يحتوي JSON على نوع تاريخ أصلي.

**3. تسمية تلقائية للعنوان أو استخدام الصف الأول.** مع تفعيل صف العنوان (الافتراضي)، يُعامَل الصف الأول كأسماء أعمدة ويصبح كل صف لاحق كائن JSON مفتَّحاً بهذه الأسماء. مع تعطيل صف العنوان، يُسمّي المحلّل الأعمدة تلقائياً col1، col2، col3 — مفيد لتفريغات البيانات الخام بدون سطر عنوان. صف شرائح المحدّد يغطي أكثر أربعة فواصل شيوعاً: الفاصلة (افتراضي RFC 4180)، والفاصلة المنقوطة (لغات Excel-EU)، وعلامة الجدولة (TSV من أدوات Unix ومستودعات البيانات)، والأنبوب (حقول كثيرة الفواصل). اختر الشريحة وحلّل — لا حاجة لإعدادات يدوية لـ CSV الواقعي النموذجي.

**4. خصوصية 100% قائمة على المتصفح.** بيانات CSV الخاصة بك — التي غالباً ما تحتوي على بيانات شخصية للمستخدمين، وتصديرات قواعد البيانات الداخلية، وسجلات العملاء، وتصديرات الإنتاج — لا تغادر متصفحك أبداً. لا تُرسَل أي بيانات إلى أي خادم، ولا يوجد تسجيل، ولا تحليلات تلتقط الإدخال. يمكنك التحقق من ذلك في تبويب «الشبكة» في متصفحك. هذه هي الطريقة الآمنة الوحيدة للتعامل مع البيانات الحساسة في أداة أونلاين. شاهد الاتجاه العكسي بالنقر على «تبديل الاتجاه» أو استخدم أداتنا الرفيقة محوّل JSON إلى CSV عندما يكون CSV هدفك. تحتاج إلى التحقق من إخراج JSON قبل استهلاكه؟ جرّب منسّق JSON.

نقاط قوة JSON هي الأنواع الدقيقة والتداخل الأصلي والمواصفة الصارمة التي تُحلَّل بشكل متطابق في كل مكان — الصيغة الصحيحة كلما استهلكت آلة البيانات. نقاط قوة CSV هي العالمية والقابلية للقراءة البشرية — الصيغة الصحيحة كلما فتح إنسان جدولاً. الأداة الصحيحة تعتمد على المستهلك: إنسان يقرأ جدولاً ← CSV، آلة تستهلك APIJSON. هذا المحوّل يتعامل مع الجسر في كلا الاتجاهين.

// Input CSV (comma + LF, header on, infer types on)
id,name,active,score
1,Alice,true,98.5
2,Bob,false,87
3,Carol,true,

// Output JSON
[
  { "id": 1, "name": "Alice", "active": true, "score": 98.5 },
  { "id": 2, "name": "Bob", "active": false, "score": 87 },
  { "id": 3, "name": "Carol", "active": true, "score": null }
]

// Same input with Header off (no first-row keys)
1,Alice,true,98.5
2,Bob,false,87

// Becomes
[
  { "col1": 1, "col2": "Alice", "col3": true, "col4": 98.5 },
  { "col1": 2, "col2": "Bob", "col3": false, "col4": 87 }
]

الميزات الرئيسية

محلّل آلة الحالة لـ RFC 4180

محلّل آلة حالة صارم يتبع مواصفة IETF لـ CSV: تعامل صحيح مع الحقول المقتبسة، والمحدّدات المضمَّنة، وCR/LF المضمَّنة، وعلامات الاقتباس المزدوجة المهرَّبة (مضاعفة). الإخراج يدعم الذهاب والعودة بنظافة عبر Python csv، وPostgreSQL COPY، وAWS S3 SELECT.

استنتاج الأنواع مع أمان الأعداد الصحيحة الكبيرة

تفعيل استنتاج الأنواع يحوّل السلاسل العددية إلى أرقام، وtrue/false إلى قيم منطقية، والخلايا الفارغة إلى null. الأعداد الصحيحة فوق 2^53 - 1 تبقى كسلاسل لتجنّب فقدان دقة IEEE 754؛ السلاسل ذات الأصفار البادئة (007، 0123) تبقى كسلاسل للحفاظ على دلالات المعرّف.

صف العنوان مع تسمية تلقائية

تفعيل صف العنوان (الافتراضي) يستخدم الصف الأول كمفاتيح JSON. تعطيل صف العنوان يُسمّي الأعمدة تلقائياً col1، col2، col3 بالترتيب — مفيد لتفريغات البيانات الخام وCSV المُولَّد آلياً بدون سطر عنوان. الأسماء التلقائية حتمية وصديقة للخطوط.

محدّدات الفاصلة والفاصلة المنقوطة وعلامة الجدولة والأنبوب

شرائح المحدّد بنقرة واحدة لأكثر أربعة فواصل شيوعاً: `,` (افتراضي RFC 4180)، و`;` (لغات Excel-EU)، و`\t` (TSV من أدوات Unix، وBigQuery، وSnowflake)، و`|` (حقول النصوص الحرة كثيرة الفواصل). يبدّل المحلّل الأوضاع فوراً — لا حاجة لتحويل الملفات أولاً.

اكتشاف الأعداد الصحيحة الكبيرة

الأعداد الصحيحة فوق 2^53 تُكتشف أثناء التحليل وتُحفظ كسلاسل في JSON — معرّفات سنوفليك في Twitter، ومعرّفات Discord، وحقول MongoDB Long، وresourceVersion في K8s تبقى دقيقة بدلاً من تقريبها بصمت بنوع الرقم وفق IEEE 754 في JavaScript.

ثنائي الاتجاه مع تبديل

زر «تبديل الاتجاه» واحد يقلب التحويل في مكانه: يصبح الإدخال JSON، والإخراج CSV، ويُحفظ النص الحالي. اعمل رحلة ذهاب وعودة لبياناتك عبر كلا الاتجاهين للتحقق من تحويل دون فقدان قبل شحنها إلى الخط.

أمثلة

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

id,name,email,role
1,Alice,alice@example.com,admin
2,Bob,bob@example.com,editor
3,Carol,carol@example.com,viewer
4,Dan,dan@example.com,viewer

CSV قياسي من تطبيق جداول. مع تفعيل صف العنوان واستنتاج الأنواع، تحصل على JSON مكتوب بدقة: تبقى الأعداد الصحيحة كأعداد، وتُكتشف القيم المنطقية وnull.

تصدير سجل محدّد بعلامة جدولة (TSV)

ts	event	user	duration
2026-05-09T10:00:00Z	signup	alice	142
2026-05-09T10:01:00Z	login	alice	87
2026-05-09T10:02:00Z	checkout	alice	312
2026-05-09T10:03:00Z	logout	alice	44

اختر `\t` (علامة الجدولة) كمحدّد. تفعيل صف العنوان الافتراضي يستخدم الصف الأول تلقائياً كمفاتيح.

CSV بصيغة Excel-EU (محدّد فاصلة منقوطة، CRLF)

id;name;price
1;Alice;1234,56
2;Bob;9876,54
3;Carol;42,00

Excel في لغات DE/FR/IT/ES يُنتج محدّدات `;` لأن الفاصلة هي علامة العشرية. اختر `;` من شريحة المحدّد — ويتولى المحلّل الباقي.

فواصل مضمَّنة وعلامات اقتباس مهرَّبة

name,role,note
"Smith, Jr.",admin,"He said ""hi"""
"Doe, Jane",editor,"Two
lines"

اقتباس RFC 4180 القياسي: يمكن للحقول المقتبسة أن تحتوي على محدّدات وعلامات اقتباس مهرَّبة (مضاعفة). المحلّل آلة حالة — لا يقسّم أبداً داخل علامات الاقتباس.

CSV بمعرّفات صحيحة كبيرة

id,event,user
9007199254740993,signup,alice
9007199254740994,login,bob
9007199254740995,checkout,carol

الأعداد الصحيحة الكبيرة تتجاوز النطاق الآمن في JavaScript (2^53 - 1). مع تفعيل استنتاج الأنواع، يكتشف المحلّل ذلك ويحتفظ بالقيمة كسلسلة للحفاظ على الدقة — دون اقتطاع.

CSV بدون صف عنوان

1,Alice,admin
2,Bob,editor
3,Carol,viewer
4,Dan,viewer

عطّل صف العنوان؛ تُسمَّى الأعمدة تلقائياً col1، col2، col3. استخدم هذا لتفريغات البيانات الخام بدون سطر عنوان.

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

  1. 1

    الصق CSV الخاص بك

    أدخل أو الصق CSV الخاص بك في حقل الإدخال أعلاه. تقبل الأداة بيانات محدّدة بفاصلة وفاصلة منقوطة وعلامة جدولة وأنبوب. يمكنك أيضاً النقر على «تحميل مثال» لتجربة عينة كتصدير جدول، أو سجل TSV، أو CSV بصيغة Excel-EU بفواصل منقوطة.

  2. 2

    اختر المحدّد (أو علامة الجدولة)

    انقر على `,` (الافتراضي)، أو `;` (فاصلة منقوطة Excel-EU)، أو `\t` (TSV)، أو `|` (أنبوب) لتبديل المحدّد بنقرة واحدة. افتح لوحة الخيارات للتحكم الدقيق: تفعيل/تعطيل صف العنوان وتفعيل/تعطيل استنتاج الأنواع. تعطيل صف العنوان يُسمّي الأعمدة تلقائياً col1، col2، col3.

  3. 3

    انسخ أو حمّل JSON

    انقر على «انسخ» لنقل JSON إلى الحافظة، أو «تحميل» لحفظه كملف .json جاهز لكودك أو API أو خط بياناتك. لرحلات الذهاب والعودة، انقر على «تبديل الاتجاه» لتحويل JSON إلى CSV في مكانه.

أخطاء التحويل الشائعة

فاصلة مضمَّنة غير مقتبسة في المصدر

إذا بُني CSV الخاص بك يدوياً بـ join(',') ساذج، فأي حقل يحتوي على فاصلة (Smith, Jr. أو 1,234.56) سيكسر حدود الأعمدة — يرى المحلّل أعمدة إضافية حيث يجب أن يكون عمود واحد. الإصلاح هو إحاطة الحقل المخالف بعلامات اقتباس مزدوجة وفق RFC 4180. تتعامل هذه الأداة بشكل صحيح مع الحقول المقتبسة، لكن يجب أن يستخدم CSV المصدر اقتباساً صحيحاً.

✗ خطأ
name,role
Smith, Jr.,admin
// Parser reads 3 columns: "Smith", " Jr.", "admin"
✓ صحيح
name,role
"Smith, Jr.",admin
// Parser reads 2 columns: "Smith, Jr.", "admin"

فواصل منقوطة Excel-EU تُحلَّل كفاصلة

لغات Excel الأوروبية (ألمانيا، فرنسا، إسبانيا، إيطاليا، إلخ.) تُنتج CSV محدّداً بفواصل منقوطة لأن الفاصلة محجوزة لفاصل العشرية. إذا تركت المحدّد على `,` (الافتراضي)، فسينهار كل صف إلى عمود واحد بفواصل منقوطة مضمَّنة. اختر شريحة المحدّد `;` — يتحول المحلّل إلى وضع الفاصلة المنقوطة ويُنتج أعمدة صحيحة.

✗ خطأ
// Wrong delimiter (default comma) on Excel-EU file
id;name;price
1;Alice;1234,56
// Each row becomes one column: { col1: "1;Alice;1234,56" }
✓ صحيح
// Correct: pick `;` Delimiter chip
id;name;price
1;Alice;1234,56
// Output: { id: 1, name: "Alice", price: "1234,56" }

معرّفات صحيحة كبيرة تفقد الدقة بعد JSON.parse

معرّفات سنوفليك في Twitter، ومعرّفات Discord، وأعداد صحيحة 64 بت أخرى تتجاوز النطاق الآمن في JavaScript (2^53 - 1) وتفقد الدقة عند قراءتها بـ JSON.parse() كأرقام. مع تفعيل استنتاج الأنواع، تكتشف هذه الأداة القيم فوق الحد الآمن وتحفظها كسلاسل بدلاً من ذلك، مما يحفظ الأرقام بدقة. استخدم BigInt("9007199254740993") في كودك للتحويل إلى نوع عددي.

✗ خطأ
// Without big-int detection
{"id": 9007199254740993}
// JavaScript reads as 9007199254740992 (precision lost)
✓ صحيح
// With Infer types on, big integers stay as strings
{"id": "9007199254740993"}
// Use BigInt(value) in code to preserve precision

صف العنوان يحتوي على مسافات

إذا كان عنوان CSV الخاص بك `id, name, email` (بمسافات بعد الفواصل)، فستصبح مفاتيح JSON "id"، " name"، " email" — بما في ذلك المسافة البادئة. يحفظ المحلّل العنوان كما هو معطى، وفق RFC 4180. الإصلاح إما تنظيف CSV المصدر قبل اللصق، أو إعادة تسمية المفاتيح لاحقاً (jq 'with_entries(.key |= ltrimstr(" "))' أو JavaScript Object.fromEntries(Object.entries(o).map(([k,v]) => [k.trim(), v]))).

✗ خطأ
id, name, email
1, Alice, alice@example.com
// Output keys: "id", " name", " email" (with leading spaces)
✓ صحيح
id,name,email
1,Alice,alice@example.com
// Output keys: "id", "name", "email" (clean)

طول صف غير متسق

عندما يكون لصفوف CSV أعداد أعمدة مختلفة (بعضها بفواصل زائدة، بعضها بدون)، يملأ المحلّل الخلايا المفقودة بسلاسل فارغة (أو null عند تفعيل استنتاج الأنواع) ويُسقط الإضافات بعد طول العنوان. يظهر تحذير «ملاحظات المخطط» لتعرف أن الصفوف طُبِّعت. هذا عادة جيد، لكن تحقق من الإخراج إذا كان المستهلكون اللاحقون يتوقعون شكل صف صارماً.

✗ خطأ
name,role,note
Alice,admin
Bob,editor,first day
// Row 1 is short by one cell
✓ صحيح
// Output (note empty/null cell in row 1)
[
  { "name": "Alice", "role": "admin", "note": null },
  { "name": "Bob", "role": "editor", "note": "first day" }
]

سلاسل التواريخ تُكره بشكل غير متوقع

سلاسل تواريخ ISO 8601 (2026-05-09T10:00:00Z) تُحفظ عمداً كسلاسل في إخراج JSON — لا يحتوي JSON على نوع تاريخ أصلي، فالإكراه إما يُنتج كائن JavaScript Date لا ينجو من التسلسل أو طابعاً زمنياً عددياً يفقد معلومات المنطقة الزمنية. هذا بالتصميم. حلّل التواريخ عند نقطة الاستخدام بـ new Date(value) أو مكتبة التاريخ التي تختارها. لا تعطّل استنتاج الأنواع فقط للحفاظ على التواريخ — هذا سيحفظ الأرقام أيضاً كسلاسل.

✗ خطأ
// Expecting a Date object in the output
ts,event
2026-05-09T10:00:00Z,signup
// Output ts is the string "2026-05-09T10:00:00Z", NOT a Date
✓ صحيح
// Correct: parse at the point of use in your code
const rows = JSON.parse(output);
const when = new Date(rows[0].ts);
// when is now a Date object

حالات الاستخدام الشائعة

تصدير جدول إلى استيراد API
الصق CSV مُصدَّراً من Excel أو Google Sheets أو Numbers واحصل على مصفوفة JSON من الكائنات جاهزة لـ POST إلى REST API، أو طفرة GraphQL، أو نقطة استيراد جماعي. الحالة الأكثر شيوعاً — يُنتج المحلّلون بيانات الجداول، ويحتاج المهندسون إلى JSON مكتوب بدقة لتغذية الواجهة الخلفية.
تصدير Excel إلى الأدوات
حوّل تصديرات Excel CSV (بما فيها ملفات Excel-EU المحدّدة بفاصلة منقوطة عبر شريحة `;`) إلى JSON للمعالجة بأدوات JavaScript، أو نصوص jq، أو أي نظام يقرأ JSON. يتعامل المحلّل مع إسقاط BOM ونهايات الأسطر CRLF بشكل صحيح فلا تتعطل تصديرات Excel على الصف الأول.
سجل TSV إلى التحليلات
السجلات المفصولة بعلامات جدولة من تصديرات BigQuery، أو إلغاءات تحميل Snowflake، أو خطوط Vector، أو أدوات Unix (cut، awk) كثيراً ما تصل كـ .tsv. اختر شريحة محدّد علامة الجدولة واحصل على مصفوفة JSON مكتوبة بدقة جاهزة للتحليل الخاص، أو إدخال لوحة المعلومات، أو تحويل مرحلة الخط.
تفريغ CSV لقاعدة البيانات إلى ETL
حوّل إخراج PostgreSQL COPY TO CSV، أو MySQL SELECT INTO OUTFILE، أو أي تفريغ CSV لقاعدة بيانات إلى JSON للتحميل إلى مخزن NoSQL، أو التغذية في خط ETL بـ JavaScript، أو الشحن إلى BigQuery كـ JSON محدّد بأسطر. يحفظ اكتشاف الأعداد الصحيحة الكبيرة المعرّفات العددية التي تتجاوز النطاق الآمن في JavaScript.
استهلاك نتائج اختبارات Postman/Newman بصيغة CSV
تشغيلات اختبارات Postman تُصدّر تقارير CSV لنجاح/فشل كل طلب. حوّل إلى JSON للاستهلاك البرمجي — تغذية في لوحة حالة، أو خط تنبيه، أو مُجمّع نتائج اختبارات. الصفوف بأشكال مختلطة (الاختبارات الفاشلة بها عمود error إضافي) تُعالَج بملء فارغ/null.
CSV صغير إلى إعدادات JSON سريعة
هل لديك CSV صغير من الثوابت — رموز العملات، أسماء الدول، رموز SKU للمنتجات — وتحتاج مصفوفة JSON لملف إعدادات أو ثابت JavaScript؟ الصق، انسخ، الصق. مع تفعيل استنتاج الأنواع، تُكتب الأرقام والقيم المنطقية بشكل صحيح؛ مع تفعيل صف العنوان، تحصل على مصفوفة من كائنات الحقول المسماة جاهزة لإسقاطها في ملف .json.

تفاصيل تقنية

آليات محلّل آلة الحالة لـ RFC 4180
المحلّل تطبيق آلة حالة منتهية صحيح يتبع RFC 4180. تشمل الحالات UnquotedField، وQuotedField، وAfterQuote، وRowEnd، وEndOfInput. يتعامل المحلّل بشكل صحيح مع الحقول المقتبسة المحتوية على المحدّد، وCR/LF المضمَّنة داخل الحقول المقتبسة، وعلامات الاقتباس المزدوجة المهرَّبة (مضاعفة، مثل "")، والأسطر الجديدة الزائدة. هذا يُنتج إخراجاً يدعم الذهاب والعودة دون فقدان عبر وحدة csv في Python، وPostgreSQL COPY، وAWS S3 SELECT، وأي محلّل متوافق. آلة الحالة واعية بالمحدّد، فالتبديل من `,` إلى `;` أو `\t` لا يُغيّر دلالات الاقتباس — فقط فاصل الحقل.
خوارزمية استنتاج الأنواع
مع تفعيل استنتاج الأنواع، تمر كل خلية عبر مسار اكتشاف مرتّب. أولاً، الخلية الفارغة تصبح null في JSON. ثانياً، السلاسل الحرفية true وfalse تصبح قيماً منطقية في JSON. ثالثاً، السلاسل ذات الأصفار البادئة (^0[0-9]+$) تبقى كسلاسل للحفاظ على دلالات المعرّف — التحويل إلى أرقام سيُسقط الأصفار البادئة بصمت. رابعاً، الأعداد الصحيحة الحرفية تُختبر مقابل حد العدد الصحيح الآمن (-2^53+1 إلى 2^53-1)؛ القيم خارج هذا النطاق تبقى كسلاسل لتجنّب فقدان دقة IEEE 754. خامساً، سلاسل تواريخ ISO 8601 تُكتشف بتعبير منتظم وتبقى عمداً كسلاسل — لا يحتوي JSON على نوع تاريخ أصلي. كل ما ينجو من الحراس الخمسة يُحوَّل عبر Number() (عددي) أو يبقى سلسلة (كل ما عداها).
إسقاط BOM ومعالجة الترميز
كل المدخلات تُعامَل كـ UTF-8. UTF-8 BOM الاختياري (0xEF 0xBB 0xBF) يُسقَط بصمت من الخلية الأولى للصف الأول عند وجوده — هذا يمنع تضمين بايتات BOM كحرف ضائع في بداية اسم العمود الأول (Excel على Windows يُنتج BOM عادة، مما يُعطّل المحلّلات الساذجة). الترميزات الأخرى (Windows-1252، ISO-8859-1) لا تُكتشف تلقائياً؛ ستكون File API في المتصفح قد فكّت ترميز البايتات كـ UTF-8 بحلول وقت وصول النص إلى هذه الأداة. إذا كان لديك مدخل غير UTF-8، حوّله أولاً بـ iconv أو خيار تصدير الترميز في محرّرك قبل اللصق.

أفضل الممارسات

اختر المحدّد صراحةً للبيانات غير ذات الفاصلة
لا تعتمد على الاكتشاف التلقائي. إذا كان CSV الخاص بك يستخدم فواصل منقوطة (Excel-EU)، أو علامات جدولة (TSV من BigQuery، أو Snowflake، أو أدوات Unix)، أو أنابيب (حقول كثيرة الفواصل)، انقر على شريحة المحدّد المطابقة قبل اللصق. المحلّل واع بالمحدّد: تبديل الشريحة يُعيد تحليل المدخل فوراً. هذا يتجنّب وضع الفشل الأكثر شيوعاً في تحويل CSV إلى JSON حيث ينهار كل صف إلى خلية واحدة لأن المحلّل استخدم الفاصل الخطأ.
أبق استنتاج الأنواع مفعّلاً لـ JSON مكتوب بدقة
مع تفعيل استنتاج الأنواع (الافتراضي)، تحصل على JSON مكتوب بدقة: أرقام كأرقام، وقيم منطقية كقيم منطقية، وnull حيث تظهر خلايا فارغة. هذا ما يريده معظم المستهلكين — API، الواجهات الأمامية، كود JavaScript. عطّل استنتاج الأنواع فقط عندما تحتاج تحديداً كل خلية كسلسلة لمستهلكين صارمي الأنواع لاحقاً، أو خطوط تحقق تقارن بايتات المصدر بدقة. يحتوي مسار الاكتشاف على حراس للسلاسل ذات الأصفار البادئة، والأعداد الصحيحة الكبيرة، وتواريخ ISO، فتبقى المعرّفات والتواريخ آمنة حتى مع تفعيل الاستنتاج.
اقتبس المعرّفات كسلاسل في CSV المصدر
إذا كان CSV الخاص بك مولّداً من قاعدة بيانات أو خط تتحكم به، أنتج المعرّفات العددية الكبيرة (سنوفليك Twitter، معرّفات Discord، resourceVersion في K8s) كسلاسل CSV مقتبسة ("9007199254740993") لتمر عبر استنتاج الأنواع بنظافة. سيحفظها المحلّل كسلاسل في كلتا الحالتين (يلتقط اكتشاف الأعداد الصحيحة الكبيرة القيم فوق 2^53 - 1)، لكن الاقتباس الصريح هو العقد المنبعي الأكثر متانة ويتجنّب أي لبس حول الدقة.
صف العنوان يجب أن يكون السطر الأول
تفعيل صف العنوان (الافتراضي) يكتشف تلقائياً الصف الأول كأسماء أعمدة. إذا كان CSV الخاص بك يحتوي على تعليقات أو أسطر فارغة أو بيانات وصفية قبل العنوان، اقتطعها قبل اللصق — لا يتخطى المحلّل الأسطر غير البيانية البادئة. لـ CSV بدون عنوان (تصديرات خام، تفريغات مولّدة آلياً)، عطّل صف العنوان وستُسمّى الأعمدة تلقائياً col1، col2، col3 بالترتيب. لا تحاول تزييف عنوان بإلصاقه ببداية ملف بدون عنوان؛ إما عطّل صف العنوان أو أصلح المصدر.
استخدم وضع التحويل النصي لرحلات CSVJSONCSV
إذا كنت تخطط لرحلة ذهاب وعودة لبياناتك عبر كلا الاتجاهين (CSVJSONCSV)، يحتاج الاتجاه العكسي (JSONCSV) إلى وضع التحويل النصي لأي مصفوفات أو كائنات متداخلة لتنجو دون فقدان. وضع التسطيح في الاتجاه العكسي يُنتج مفاتيح بنقاط (customer.address.city) لا يستطيع محلّل CSV إعادة بنائها بدقة. شاهد محوّل JSON إلى CSV لمرجع الاتجاه العكسي الكامل وملاحظات اختبار رحلة الذهاب والعودة.

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

ماذا تفعل هذه الأداة؟
تحوّل CSV إلى JSON مباشرة في متصفحك، مع دعم ثنائي الاتجاه: انقر «تبديل الاتجاه» لتحويل JSON إلى CSV في اللوحة نفسها. الصق CSV في منطقة الإدخال وتُنتج الأداة إخراج JSON فوراً — لا رفع ولا تسجيل ولا يغادر شيء جهازك. المحلّل متوافق مع RFC 4180، ويتعامل مع شرائح المحدّدات للفاصلة والفاصلة المنقوطة (Excel-EU) وعلامة الجدولة (TSV) والأنبوب، ويحوّل خيار استنتاج الأنواع السلاسل العددية إلى أرقام، وtrue/false إلى قيم منطقية، والخلايا الفارغة إلى null. تتعامل الأداة أيضاً مع المعرّفات الصحيحة الكبيرة التي قد تفقد دقتها عبر JSON.parse، والفواصل المضمَّنة داخل الحقول المقتبسة، وعلامات الاقتباس المزدوجة المهرَّبة (مضاعفة)، والبيانات بدون عنوان مع تسمية تلقائية للأعمدة (col1، col2، col3).
هل تُرفع بياناتي إلى أي مكان؟
لا. يتم التحويل بنسبة 100% في متصفحك باستخدام JavaScript. لا تُرسَل بيانات CSV الخاصة بك أبداً عبر الشبكة، ولا تُخزَّن على أي خادم، ولا تُسجَّل، ولا تُحلَّل. هذا يجعل الأداة آمنة لتصديرات الجداول التي تحتوي على بيانات شخصية وتفريغات CSV الداخلية لقواعد البيانات وسجلات العملاء وأي بيانات حساسة. يمكنك التحقق من ذلك في تبويب «الشبكة» في متصفحك — لصق CSV لا يُطلق أي طلبات شبكة. لا تستخدم الأداة أي ملفات تعريف ارتباط لبيانات الإدخال ولا أي تحليلات طرف ثالث قد تلتقط ما تلصقه.
كيف يعمل استنتاج الأنواع؟
مع تفعيل استنتاج الأنواع، تُمرَّر كل خلية محلَّلة عبر مسار اكتشاف صغير قبل وضعها في JSON: السلاسل العددية (1، 42، -3.14) تصبح أرقاماً، وtrue/false تصبح قيماً منطقية، والسلاسل الفارغة والكلمة الحرفية null تصبح null في JSON، وكل ما عداها يبقى سلسلة. هناك حارسان مهمان. أولاً، السلاسل ذات الأصفار البادئة مثل 007 أو 0123 تبقى سلاسل رغم مظهرها العددي — الأصفار البادئة تشير إلى أن القيمة معرّف (الرموز البريدية، رموز الهاتف، معرّفات التسلسل) والتحويل إلى رقم سيُسقط الأصفار بصمت. ثانياً، الأعداد الصحيحة فوق 2^53 - 1 (9007199254740991) تبقى أيضاً كسلاسل لتجنّب فقدان دقة IEEE 754. سلاسل تواريخ ISO (2026-05-09T10:00:00Z) تُترك عمداً كسلاسل — لا يحتوي JSON على نوع تاريخ أصلي، فالإكراه ينتج كائن JavaScript Date لا ينجو من التسلسل.
لماذا تُحفظ الأعداد الصحيحة الكبيرة كسلاسل؟
نوع Number في JavaScript يستخدم الفاصلة العائمة مزدوجة الدقة وفق IEEE 754 ولا يستطيع تمثيل الأعداد الصحيحة بدقة إلا حتى 2^53 - 1 (9007199254740991). المعرّفات الواقعية — معرّفات سنوفليك في Twitter، ومعرّفات Discord، وحقول MongoDB Long، وresourceVersion في K8s — هي أعداد صحيحة 64 بت تتجاوز هذا النطاق الآمن. لو استدعى المحلّل Number() عليها، لقُرّبت النتيجة بصمت (9007199254740993 يصبح 9007199254740992). يكتشف مسار استنتاج الأنواع القيم فوق حدود العدد الصحيح الآمن ويحفظها كسلاسل بدلاً من ذلك، فتنجو الأرقام سليمة. يظهر شريط تحذير أسفل الإخراج يسرد الحقول المتأثرة. للتحويل بدقة في الكود، استخدم BigInt("9007199254740993") على قيمة سلسلة JSON.
CSV الخاص بي يستخدم فواصل منقوطة — كيف أحلّله؟
لغات Excel الأوروبية (ألمانيا، فرنسا، إسبانيا، إيطاليا، إلخ.) تُنتج CSV محدّداً بفواصل منقوطة لأن الفاصلة محجوزة لفاصل العشرية. انقر على شريحة `;` في صف المحدّد (أو افتح لوحة الخيارات الكاملة واختر `;`) وسيتحول المحلّل إلى وضع الفاصلة المنقوطة فوراً. القيم العددية بفواصل عشرية (1234,56) داخل هذه الملفات تبقى كسلاسل عبر استنتاج الأنواع لأن الترميز العشري الأوروبي خاص باللغة — حوّلها في الكود إذا احتجت قيماً عددية. لا يزال المحلّل يطبّق قواعد اقتباس RFC 4180 مع المحدّد الجديد، فتُعالَج الحقول المقتبسة المحتوية على فواصل منقوطة بشكل صحيح.
هل تتعامل مع TSV (محدّد بعلامة جدولة)؟
نعم. انقر على شريحة علامة الجدولة في صف المحدّد ويُقسّم المحلّل على أحرف علامة الجدولة بدلاً من الفواصل. TSV هي أنظف صيغة لمشاركة CSV عبر اللغات لأن علامة الجدولة من غير المرجح أن تظهر داخل الحقول النصية، مما يلغي معظم حالات الاقتباس الحدّية. هي الإخراج الافتراضي لأدوات Unix (cut، awk) ومستودعات البيانات (BigQuery، Snowflake)، ومدعومة جيداً من Excel في أي لغة. الصق محتويات ملف .tsv أو .tab مباشرة — وبقية المحلّل (تسمية العنوان التلقائية، استنتاج الأنواع، اكتشاف الأعداد الصحيحة الكبيرة) يعمل بشكل متطابق.
ماذا لو لم يكن لـ CSV صف عنوان؟
عطّل صف العنوان في لوحة الخيارات. سيعامل المحلّل السطر الأول كبيانات بدلاً من أسماء الأعمدة ويُولّد المفاتيح تلقائياً: col1، col2، col3، … واحد لكل عمود. الإخراج JSON هو مصفوفة من الكائنات بهذه المفاتيح الاصطناعية. هذا مفيد للتصديرات الخام من قواعد البيانات التي تحذف العنوان، والملفات المسطّحة بصيغة ثابتة، وCSV المُولَّد آلياً. إذا أردت أسماء مفاتيح مختلفة، حوّل بالأسماء التلقائية أولاً ثم أعد تسمية المفاتيح في خطك اللاحق (jq، خريطة JavaScript، إلخ.). لا تستنتج الأداة المفاتيح من إرشادات البيانات — تعطيل صف العنوان يُنتج دائماً col1، col2، col3.
هل تتعامل مع الحقول المقتبسة بفواصل مضمَّنة؟
نعم. المحلّل آلة حالة RFC 4180 صحيحة: عندما يرى علامة اقتباس مزدوجة افتتاحية، يتحول إلى حالة QuotedField ويعامل كل شيء حتى علامة الاقتباس المزدوجة التالية غير المهرَّبة كحقل واحد، بما في ذلك المحدّدات ونهايات الأسطر المضمَّنة (CR/LF). علامات الاقتباس المزدوجة المهرَّبة (المضاعفة، مثل "") تنهار بشكل صحيح إلى علامة اقتباس واحدة. هذا يعني أن `"Smith, Jr."` يُحلَّل كحقل واحد يحتوي على `Smith, Jr.`، و`"He said ""hi"""` يُحلَّل كـ `He said "hi"`. محلّلات «التقسيم بالفاصلة» الساذجة تتعطل على هذه البيانات الواقعية؛ هذه الأداة لا.
لماذا تبقى تواريخي كسلاسل؟
بالتصميم. لا يحتوي JSON على نوع تاريخ أصلي — فقط سلاسل وأرقام وقيم منطقية وnull ومصفوفات وكائنات. سلاسل تواريخ ISO 8601 (2026-05-09T10:00:00Z) تُحفظ حرفياً كسلاسل في إخراج JSON، وهو التمثيل الصحيح بدون فقدان. لو أكره المحلّل القيم إلى كائنات JavaScript Date، فسيُنتج تسلسل JSON الناتج إخراجاً مختلفاً (كائن دون تمثيل ذهاب وعودة مفيد، أو طابع زمني عددي). احفظ التواريخ كسلاسل في JSON وحلّلها عند نقطة الاستخدام بـ new Date(value) أو مكتبة التاريخ التي تختارها. هذا يطابق سلوك كل خط JSON من CSV رئيسي: Pandas، وjq، ووحدتي csv + json في Python.
ماذا يحدث إذا كانت للصفوف أطوال مختلفة؟
الصفوف ذات الأشكال المختلطة (بعضها بأعمدة أكثر أو أقل من العنوان) تُملأ لتطابق طول العنوان. الخلايا الإضافية بعد عدد العنوان تُسقَط، والخلايا المفقودة تُضبط إلى سلسلة فارغة (أو null عند تفعيل استنتاج الأنواع ورؤية المحلّل قيمة فارغة). يظهر تحذير «ملاحظات المخطط» أسفل الإخراج لتعرف أن الصفوف طُبِّعت. هذا عادة جيد للأدوات اللاحقة التي تُوحّد المفاتيح، لكن تحقق من الإخراج إذا كان مستهلكك يتوقع اتساقاً صارماً في شكل الصف. السبب الأكثر شيوعاً هو فواصل زائدة في بعض الصفوف أو حقول مقتبسة بنهايات أسطر مضمَّنة يُحصيها المصدّرون السابقون بشكل خاطئ.
ما حجم الملف الذي يمكنني لصقه؟
فوق 100,000 حرف أو 2,000 صف، يتحول التحويل المباشر تلقائياً إلى الوضع اليدوي: يظهر زر «تحويل» في شريط معلومات ولا يعمل التحويل إلا عند النقر عليه. هذا يمنع توقف مسار التنفيذ الرئيسي للمتصفح عن كل ضغطة مفتاح أثناء التحليل الثقيل. للإخراج فوق 5 ميغابايت أو 50,000 صف، تقتطع الأداة المعاينة على الشاشة لـ JSON إلى أول 500 صف وتعرض شريط «عرض أول 500 من N صف» — لكن زر «تحميل» لا يزال يُنتج الملف الكامل بكل صف مُدرج. الحد الأعلى الصارم هو 10 ميغابايت من المدخلات؛ فوق ذلك تعرض الأداة خطأً وتطلب منك تقليل المدخل.
هل يمكنني عمل رحلة JSONCSVJSON؟
نعم، عندما يكون JSON مسطّحاً (لا كائنات أو مصفوفات متداخلة). للبيانات المتداخلة، يحتاج الاتجاه العكسي (JSONCSV) إلى وضع التحويل النصي للحفاظ على المصفوفات والكائنات كـ JSON داخل خلية واحدة — والتي تعود بعد ذلك دون فقدان عبر هذا المحوّل CSVJSON عند تفعيل استنتاج الأنواع. انقر على «تبديل الاتجاه» في أعلى اللوحة للقلب إلى وضع JSON إلى CSV والتحقق من رحلة الذهاب والعودة. وضع التسطيح في الاتجاه العكسي أحادي الاتجاه: يُنتج مفاتيح بنقاط (customer.address.city) لا يمكن إعادة بنائها بدقة من CSV. شاهد محوّل JSON إلى CSV للاتجاه العكسي بدعم كامل لوضع التحويل النصي.

أدوات ذات صلة

عرض جميع الأدوات →

محوّل Base64 — ترميز وفك ترميز أونلاين

الترميز والتنسيق

رمّز وفك ترميز Base64 مجاناً أونلاين — محوّل فوري مع دعم UTF-8 والرموز التعبيرية. خصوصية 100% — يعمل في متصفّحك. جرّبه الآن.

JSON Diff مقارنة

الترميز والتنسيق

قارن ملفي JSON فوراً في متصفحك. عرض جنباً إلى جنب مع تمييز الفروق، وإخراج JSON Patch (RFC 6902)، وتجاهل الحقول المزعجة كالطوابع الزمنية والمعرّفات. خصوصية تامة، بدون رفع ملفات.

منسق JSON — التحقق والضغط وإصلاح الأخطاء

الترميز والتنسيق

نسّق JSON وتحقّق من صحته وأصلح الأخطاء فوراً — محرّر مجاني أونلاين يعمل في متصفّحك. يدعم الضغط والتجميل والتحويل. جرّبه الآن.

مدقق JSON Schema

الترميز والتنسيق

تحقق فوراً من JSON مقابل أي JSON Schema في متصفحك. يدعم Draft 2020-12 و2019-09 وDraft-07 مع رسائل أخطاء دقيقة بالمسار. خصوصية تامة - بدون رفع ولا حساب، مجاني.

محوّل JSON إلى CSV

الترميز والتنسيق

حوّل JSON إلى CSV في متصفحك. RFC 4180، Excel، TSV، أنبوب. خصوصية 100%.

محوّل JSON إلى YAML

الترميز والتنسيق

الصق JSON واحصل على YAML فوراً. تحويل مباشر في متصفّحك، جاهز لـ Kubernetes وDocker Compose، مع حماية من مشكلة Norway. خصوصية 100%.