البرمجة

تحويل ملف CSV باستخدام دفعة MS-DOS

لتحقيق هذا الهدف، يمكنك استخدام ملف دفعي Batch في نظام التشغيل MS-DOS. فيما يلي كود دفعي يقوم بتحقيق المطلوب:

batch
@echo off setlocal enabledelayedexpansion set "input_file=source.csv" set "output_file=target.csv" rem Set the flag to indicate whether it's the first line or not set "first_line=true" rem Process the input file line by line for /f "tokens=*" %%a in ('type "%input_file%"') do ( rem Check if it's the first line if "!first_line!"=="true" ( rem Add "H," to the beginning of the first line echo H,%%a >> "%output_file%" set "first_line=false" ) else ( rem Add "D," to the beginning of all subsequent lines echo D,%%a >> "%output_file%" ) ) echo "Conversion complete." endlocal

قم بتحفظ هذا الكود في ملف بامتداد “.bat” مثل “convert.bat”، وضع الملف الذي ترغب في تحويله باسم “source.csv” في نفس المجلد الذي يحتوي على الملف الدفعي.

بعد ذلك، افتح نافذة الأوامر Command Prompt وانتقل إلى المسار الذي يحتوي على الملف الدفعي والملف المصدر. ثم اكتب اسم الملف الدفعي مع امتداده واضغط Enter.

ستقوم الأوامر بتحويل الملف المصدر وإنشاء ملف جديد بالاسم الذي حددته (target.csv) بتطبيق التغييرات المطلوبة.

المزيد من المعلومات

بالطبع، سأواصل المقال لشرح الكود وبعض النقاط الإضافية المفيدة.

في البداية، يتم تحديد متغيرين: “input_file” و “output_file”، حيث يتم تعيين قيمهما لاسم الملف المصدر واسم الملف المستهدف على التوالي. يمكنك تغيير هذه القيم إذا كانت أسماء الملفات لديك تختلف.

ثم يتم استخدام حلقة التكرار for /f لقراءة الملف النصي سطراً بسطر. وفي كل مرة يتم قراءة سطر جديد، يتم التحقق مما إذا كان السطر هو السطر الأول في الملف باستخدام المتغير “first_line”. إذا كان السطر الأول، يتم إضافة “H,” إلى بدايته وإرساله إلى الملف المستهدف. وإلا، يتم إضافة “D,” إلى بداية السطر وإرساله أيضاً إلى الملف المستهدف.

يتم استخدام المتغير المؤقت “enabledelayedexpansion” لتمكين تأخير التوسيع في حلقة التكرار، مما يسمح بالتعامل مع قيمة “first_line” بشكل صحيح داخل الحلقة.

بمجرد الانتهاء من المعالجة، ستظهر رسالة تؤكد اكتمال التحويل.

يُنصح بتشغيل الكود على ملف نسخة احتياطية من الملف المصدر قبل استخدامه على الملف الفعلي، للتأكد من أن النتائج تتوافق مع ما تتوقعه.

بهذا، يمكنك استخدام الكود السابق لتنفيذ المطلوب بسهولة، ويمكنك تكييفه وتعديله وفقاً لاحتياجاتك الخاصة في المستقبل.

زر الذهاب إلى الأعلى