الانتقال إلى الأداة
ViewCSV
الملفات تبقى على جهازك

مولّد CSV

معاينة
#idnameemailsignup_dateplanamount
11مريم الشمريtaylor.harbor1@example.test2025-03-17Free315.13
22يوسف النجارtaylor.velvet2@example.test2025-07-22Free485.36
33خالد الدوسريquinn.orbit3@example.test2025-02-26Free397.70
44علي الخطيبmorgan.lumen4@example.test2024-09-28Team258.90
55محمد المنصورavery.atlas5@example.test2024-01-11Free250.80
66علي الحسنjamie.signal6@example.test2024-08-18Free319.01
77أحمد الدوسريavery.cedar7@example.test2024-10-17Free162.79
88نور المصريriley.atlas8@example.test2024-11-26Free476.86
99محمد الدوسريavery.copper9@example.test2024-07-19Free15.43
1010نور النجارriley.velvet10@example.test2024-09-20Free246.07
1111مريم السيدavery.cobalt11@example.test2024-09-25Pro414.32
1212يوسف الحسنmorgan.signal12@example.test2025-04-20Free388.35
1313عمر النجارtaylor.harbor13@example.test2025-02-17Free193.23
1414ليلى المنصورmorgan.quartz14@example.test2024-02-19Free425.88
1515محمد النجارriley.atlas15@example.test2025-06-29Free303.49
1616محمد المصريquinn.ember16@example.test2025-01-17Free269.41
1717أحمد القحطانيjamie.copper17@example.test2025-03-14Free339.44
1818يوسف الحسنquinn.maple18@example.test2025-08-17Pro160.18
1919سارة العليquinn.prism19@example.test2025-09-05Pro444.79
2020ليلى المصريalex.copper20@example.test2024-04-18Pro321.08
2121هدى المنصورjordan.cedar21@example.test2025-05-06Pro259.88
2222هدى القحطانيjordan.maple22@example.test2024-11-13Pro450.71
2323يوسف المنصورjamie.harbor23@example.test2025-02-26Free243.05
2424ليلى السيدmorgan.delta24@example.test2024-02-22Free59.72
2525خالد العليjamie.orbit25@example.test2024-12-20Free90.04
2626محمد السيدcasey.paper26@example.test2024-01-11Pro454.97
2727سارة الزهرانيjordan.tundra27@example.test2025-03-01Free468.54
2828يوسف العليtaylor.cedar28@example.test2024-05-07Pro399.73
2929ليلى المصريjamie.signal29@example.test2024-07-01Free339.48
3030يوسف المنصورalex.meadow30@example.test2025-11-09Pro267.97

معاينة: 100 من أصل 100 صف.

يمكن تعريف 100 عمود على الأكثر، واختيار نوع حقل لكل عمود، وتحديد عدد صفوف من 1 إلى مليون صف، وبذرة. البذرة نفسها مع إعدادات الأعمدة نفسها تعطي دائمًا الصفوف نفسها في كل متصفح، فيمكن إعادة إنشاء ملف الاختبار بدل تخزينه. الأسماء وعناوين البريد وأرقام الهواتف وهمية: تنتهي عناوين البريد بـ⁦@example.test⁩، وأرقام الهواتف في الواجهة الإنجليزية من النطاق ⁦555⁩. يجري التوليد في متصفحك ولا يُرفع أي شيء.

طريقة إنشاء ملف CSV

  1. حدِّد عدد الصفوف (من 1 إلى مليون) والبذرة. الإعداد الأولي فيه ستة أعمدة: id تسلسلي، واسم كامل، وبريد إلكتروني، وتاريخ تسجيل في 2024 أو 2025، وخطة تُختار من Free أو Pro أو Team بنسبة 6:3:1، ومبلغ من 0 إلى 500 بخانتين عشريتين.
  2. أضِف أعمدة أو احذفها أو أعِد تسميتها، واختر نوع حقل لكل منها. يجب أن يكون لكل عمود اسم غير فارغ وغير مكرر.
  3. يمكن اختياريًا تحديد نسبة للخلايا الفارغة أو اشتراط قيم فريدة في كل عمود، ثم إنشاء الملف وتنزيله.

تُكتب الصفوف على أجزاء في عامل خلفي (Web Worker) بدل سلسلة نصية واحدة ضخمة، فلا تتجمّد الصفحة عند إنشاء ملف من مليون صف، ويوقف الإلغاءُ المهمة. الحد الأقصى لملف الناتج الواحد 4 غيغابايت.

أنواع الحقول

تسلسليعدّ من قيمة بداية (الافتراضي 1) بخطوة (الافتراضي 1). ويكتب عرض التعبئة الاختياري معرّفات بصيغة ⁦000001⁩، ولا تُعبّأ الأرقام السالبة أبدًا.
UUIDبنية الإصدار 4 من RFC 9562 ‏(⁦xxxxxxxx-xxxx-4xxx-[89ab]xxx-…⁩)، مأخوذة من المولّد ذي البذرة. وبما أنها قابلة للتكرار فهي لا تصلح سرًّا أو رمزًا أمنيًا.
الاسم الأول، اسم العائلة، الاسم الكاملأسماء شائعة بلغة الواجهة. تُكتب الأسماء الكاملة الصينية واليابانية والكورية باسم العائلة أولًا دون مسافة.
البريد الإلكترونيبصيغة ⁦name.word<row>@example.test⁩، مثل ⁦casey.maple1@example.test⁩. يجعل رقم الصف كل عنوان فريدًا، ولا يُشتق العنوان من عمود الاسم.
الهاتفنمط يتحول فيه كل ⁦#⁩ إلى رقم. يُترك فارغًا لاستخدام الصيغة الافتراضية للغة، وهي في الإنجليزية ⁦+1 555-###-####⁩.
الشركة، المدينة، الدولةأسماء شركات مخترعة وأسماء مدن حقيقية بلغة الواجهة؛ وتُختار الدولة من قائمة ثابتة من 20 دولة.
عدد صحيحعدد صحيح بين الحد الأدنى والحد الأقصى شاملًا الحدين. كلا الحدين مطلوب، ويجب أن يبقى ضمن ⁦±9,007,199,254,740,991⁩، وهو أكبر عدد صحيح تخزّنه JavaScript بدقة.
عدد عشريعدد بين الحد الأدنى والحد الأقصى بعدد خانات عشرية من 0 إلى 10، مثل ⁦114.71⁩.
منطقي⁦true⁩ أو ⁦false⁩ باحتمال متساوٍ.
تاريخ، تاريخ ووقتيوم عشوائي بين تاريخين بصيغة ⁦YYYY-MM-DD⁩ شاملًا الطرفين. ويضيف «تاريخ ووقت» وقتًا عشوائيًا بتوقيت UTC: ⁦2026-01-04T09:17:35Z⁩.
اختيارقيمة في كل سطر، مع وزن اختياري بعد نقطتين: ⁦Free:6⁩ و⁦Pro:3⁩ و⁦Team:1⁩ تختار Free في نحو 60% من المرات. السطر الذي لا وزن له يُحسب 1.
نمطقالب يمثّل فيه ⁦#⁩ رقمًا، و⁦?⁩ حرفًا لاتينيًا كبيرًا، و⁦*⁩ رقمًا أو حرفًا كبيرًا: يعطي ⁦SKU-####-??⁩ قيمة مثل ⁦SKU-6836-LU⁩. وتُنسخ كل الأحرف الأخرى كما هي.
كلماتمن 1 إلى 20 كلمة (الافتراضي 3) من قائمة ثابتة من 20 كلمة إنجليزية بسيطة، كنص حشو.
ثابتالنص نفسه في كل صف.

البذرة وقابلية التكرار

البذرة أي نص. يسحب كل عمود قيمه من تيار عشوائي خاص به مشتق من البذرة واسم العمود، ولذلك:

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

للخلايا الفارغة تيار منفصل. الخلية الفارغة لا تستهلك قيمة، لذا فإن تغيير نسبة الخلايا الفارغة يغيّر القيم التي تظهر في الصفوف اللاحقة من ذلك العمود.

الخلايا الفارغة والقيم الفريدة

الخلايا الفارغة نسبة مئوية من 0 إلى 100 لكل عمود، وتُترك كل خلية فارغة بهذا الاحتمال. وهي مفيدة لاختبار تعامل عملية الاستيراد مع القيم المفقودة.

خيار القيم الفريدة يعيد سحب القيمة حتى يجد قيمة لم تُستخدم في ذلك العمود، ويتوقف بعد ألف محاولة برسالة خطأ تذكر اسم العمود. وتُرفض الإعدادات مسبقًا إذا استحال التفرّد: نطاق أعداد صحيحة فيه أعداد أقل من الصفوف، أو اختيارات أقل من الصفوف. وقد تنفد الأنواع الأخرى في منتصف الطريق، مثل الاسم الكامل الفريد بعد نحو 144 صفًا في الإنجليزية (12 اسمًا أول × 12 اسم عائلة). أعمدة التسلسل وUUID والثابت لا تخضع لهذا الفحص، ولا تُحسب الخلايا الفارغة قيمًا.

أخطاء الإعدادات

  • يجب أن يكون عدد الصفوف عددًا صحيحًا من 1 إلى مليون، وعدد الأعمدة من 1 إلى 100.
  • اسم عمود فارغ أو مستخدم مرتين: يجب أن يكون لكل عنوان اسم مختلف وغير فارغ.
  • أعمدة الأعداد الصحيحة والعشرية تحتاج حدًا أدنى وحدًا أقصى معًا، على ألا يزيد الأدنى على الأقصى.
  • تُكتب نطاقات التواريخ بصيغة ⁦YYYY-MM-DD⁩، مثل ⁦2024-01-01⁩؛ وتُرفض ⁦2024/01/01⁩ أو ⁦01/02/2024⁩.
  • يجب أن يحتوي النمط على واحد على الأقل من ⁦#⁩ أو ⁦?⁩ أو ⁦*⁩؛ وإلا فاستخدم عمودًا ثابتًا.
  • قائمة الاختيارات تحتاج قيمة واحدة على الأقل وزنها أكبر من صفر.

مثال

خمسة صفوف بالبذرة ⁦demo-2026⁩ والواجهة الإنجليزية: تسلسل يبدأ من 1001 ومعبّأ إلى 6 خانات، واسم كامل، وبريد إلكتروني، واختيار مرجّح، وعدد عشري من 0 إلى 250 مع 40% خلايا فارغة، والنمط ⁦SKU-####-??⁩. بتشغيله مرة أخرى بالإعدادات نفسها تحصل على هذه الصفوف بالضبط. تظهر نهايات الأسطر هنا كفواصل أسطر عادية.

CSV
rows: 5    seed: demo-2026    language: English
customer_id  sequence  start 1001, width 6
name         full name
email        email
plan         choice    Free:6 / Pro:3 / Team:1
mrr          decimal   0–250, 2 places, 40% blank
sku          pattern   SKU-####-??
CSV
customer_id,name,email,plan,mrr,sku
001001,Mary Brown,casey.maple1@example.test,Free,,SKU-6836-LU
001002,Ethan Davis,taylor.copper2@example.test,Pro,,SKU-8060-HR
001003,Ethan Clark,morgan.falcon3@example.test,Team,114.71,SKU-1401-TZ
001004,Olivia Davis,jordan.harbor4@example.test,Pro,91.82,SKU-8840-PT
001005,Mia Taylor,casey.prism5@example.test,Free,6.99,SKU-6878-OZ

أسئلة وأجوبة

هل مشاركة البيانات المولَّدة آمنة؟

لا تحتوي أشخاصًا حقيقيين: الأسماء أزواج عشوائية من أسماء شائعة، وعناوين البريد تستخدم النطاق المحجوز ⁦.test⁩ ‏(RFC 2606)، وأرقام الهواتف في الإنجليزية تستخدم ⁦555⁩. أما أسماء المدن فأماكن حقيقية.

هل سيحصل زميلي على الملف نفسه؟

نعم، إذا استخدم البذرة نفسها وعدد الصفوف نفسه ولغة الواجهة نفسها وإعدادات الأعمدة نفسها، بما فيها أسماء الأعمدة. يستخدم المولّد خوارزمية خاصة به تعتمد على البذرة، لا الأرقام العشوائية للمتصفح.

هل أحتاج إلى ملف كبير أم إلى ملف اختبار صغير؟

لبضعة صفوف موثّقة بحالات حدّية معروفة، استخدم ملفات CSV النموذجية. واستخدم المولّد عند الحاجة إلى حجم كبير أو أسماء أعمدة خاصة بك أو مزيج محدد من الأنواع.

المعايير والمراجع