كيف تحوّل JSON إلى CSV يفتح في Excel؟
أداة تحوّل مصفوفة JSON إلى جدول CSV: كل كائن يصبح صفًا، ومفاتيحه تتحول إلى أعمدة، جاهزًا للفتح في Excel أو أي برنامج جداول بيانات. تعمل داخل متصفحك مباشرة دون رفع الملف لأي خادم، وتتعامل مع الكائنات المتداخلة بتسطيحها في أعمدة واضحة، فتناسب من يحتاج تقريرًا قابلًا للقراءة من استجابة واجهة برمجية معقّدة.
شغّل الأداة مجانًا
تعمل هذه الأداة داخل متصفحك — مجانًا، ولا تُرسل بياناتك إلى أي خادم
مشكلة الكائنات المتداخلة عند التحويل إلى جدول
بيانات JSON قد تحتوي كائنًا داخل كائن، أو مصفوفة داخل حقل واحد، وهو ما لا يملك تمثيلًا مباشرًا في جدول مسطّح كـ CSV. تتعامل الأداة مع هذا التداخل بتسطيحه: يتحول الحقل الفرعي إلى عمود منفصل باسم مركّب من مساره الكامل، فلا تُفقد أي قيمة أثناء التحويل ويبقى الجدول قابلًا للفتح والفهم مباشرة في أي برنامج جداول بيانات دون خطوة تنظيف يدوية بعد ذلك.
التوافق مع Excel وGoogle Sheets
يُنتَج الملف بترميز UTF-8 يحافظ على النص العربي سليمًا عند فتحه في Excel، وهي مشكلة شائعة تُخرج الحروف العربية مشوّهة حين يُصدَّر الملف بترميز خاطئ. تُفصل الأعمدة بالفاصلة القياسية، وتُغلَّف القيم التي تحتوي فواصل أو أسطرًا جديدة بعلامات اقتباس تلقائيًا حتى لا ينكسر الجدول عند القراءة، فيبقى كل شيء في عمودٍه الصحيح من أول فتح للملف، دون حاجة لإعادة ضبط الترميز يدويًا بعد كل تصدير.
الاستخدام من الصفحة مباشرة
ألصق مصفوفة JSON أو ارفع الملف، شغّل الأداة، وانسخ الجدول أو نزّله كملف CSV جاهز. تجري المعالجة داخل متصفحك دون رفع الملف لأي خادم، ولا حدّ لعدد المرات ولا حاجة لتسجيل. تناسب ملفات تصل حتى 25 MB، وتعمل من الجوال بالطريقة نفسها التي تعمل بها من الحاسوب. يمكن معاينة الجدول الناتج مباشرة على الصفحة قبل النسخ، للتأكد من ترتيب الأعمدة كما تريده قبل استخدامه في أي برنامج.
الأتمتة عبر الـAPI لتقارير دورية
من يستخرج تقريرًا أسبوعيًا من استجابة واجهة برمجية يحتاج CSV جاهزًا لا نسخًا يدويًا كل مرة. المحرك نفسه متاح عبر الـAPI: يُرسل JSON، ويعود CSV بسعر ثابت قدره $0.002 لكل ألف صف، دون اشتراك شهري. خيار طبيعي لنظام يولّد تقرير مبيعات يوميًا من قاعدة بياناته ويسلّمه لفريق لا يستخدم إلا Excel. تصلح الخدمة نفسها لتغذية أنظمة تحليل بيانات تقبل CSV فقط ولا تتعامل مع استجابات JSON مباشرة.
حالات الاستخدام
تقرير مبيعات أسبوعي لفريق لا يستخدم إلا Excel
يستخرج فريق المبيعات في شركة الواحة للتجارة المحدودة بيانات المبيعات من واجهة النظام بصيغة JSON أسبوعيًا، ويحوّلها هنا إلى جدول يفتحه المدير مباشرة في Excel دون شرح إضافي.
دمج نتائج استبيان إلكتروني في جدول
تجمع سارة النعيمي إجابات استبيان رضا العملاء من نظام استمارات يصدّرها بصيغة JSON، وتحوّلها إلى CSV لتحليلها في جدول بيانات مألوف.
تصدير كتالوج منتجات لمنصة إعلانات
يحتاج متجر عبدالله المنصوري رفع كتالوج منتجاته إلى منصة إعلانات تقبل CSV فقط، بينما نظام المتجر يصدّر JSON؛ يحوّله هنا خلال دقيقة قبل كل حملة.
الأسئلة الشائعة
هل يفتح الجدول الناتج في Excel دون تشويه في النص العربي؟
نعم، يُنتَج بترميز UTF-8 يحافظ على النص العربي سليمًا عند الفتح المباشر.
ماذا يحدث للكائنات المتداخلة داخل JSON؟
تُسطَّح إلى أعمدة منفصلة بأسماء مركّبة من مسارها الكامل، دون فقدان أي قيمة.
هل الأداة مجانية فعلًا؟
نعم، داخل المتصفح بلا حدّ وبلا تسجيل. المدفوع فقط عبر الـAPI بسعر $0.002 لكل ألف صف.
هل يُرسل ملفي إلى خادم؟
لا، عند الاستخدام من هذه الصفحة تجري المعالجة داخل متصفحك فقط.
ما أقصى حجم ملف مدعوم؟
25 ميغابايت في الطلب الواحد.
هل يعمل من الجوال؟
نعم، بالطريقة نفسها التي يعمل بها من الحاسوب، دون تثبيت شيء.
هل الأسعار بالدولار فقط؟
نعم، والدفع عبر PayPal؛ لطلبات أكبر راسلنا عبر واتساب أو البريد.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/data/json-to-csv \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/data/json-to-csv", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/json-to-csv",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/json-to-csv", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/json-to-csv", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "…"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.json_to_csv",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_mb | 25 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |