تخزين أحرف عربية في الملف
إذا حاولت كتابة أحرف عربية في ملف و لم تحدد أن نوع الترميز المستخدم عند التعامل مع الملف هو utf-8 سيظهر أمامك الخطأ 'charmap' codec can't encode.
و إذا حاولت قراءة نص عربي موجود في ملف و لم تحدد نوع الترميز ستلاحظ أن النص يظهر بشكل غير مفهوم كالتالي السلام عليكم
.
في المثال التالي قمنا بإنشاء ملف إسمه arabic.txt
قمنا بتخزين نص عربي فيه و بعدها قمنا بقراءة النص الموجود فيه.
مثال
# 'Test.py' سيتم إنشاؤه في نفس المشروع بجانب الملف 'arabic.txt' يشير لملف جديد إسمه opened_file هنا قمنا بإنشاء كائن إسمه # لنستطيع التعامل مع الأحرف العربية 'utf-8' حتى يتم إنشاء الملف و يكون لدينا القدرة على الكتابة و القراءة منه في نفس الوقت. كما أننا حددنا نوع الترميز هو 'w+' وضعنا الرمز opened_file = open('arabic.txt', 'w+', encoding='utf-8') # لكتابة نص جديد في الملف الذي يشير إليه و لاحظ أننا أدخلنا نص عربي opened_file من الكائن write() هنا قمنا باستدعاء الدالة opened_file.write('السلام عليكم و رحمة الله و بركاته') # للعودة لأول الملف seek() هنا قمنا باستدعاء الدالة opened_file.seek(0,0) # الذي يشير للملف المفتوح حتى ترجع كل النص الموجود فيه, بعدها قمنا بطباعة النص الذي سترجعه opened_file من الكائن read() هنا قمنا باستدعاء الدالة print(opened_file.read()) # لإغلاق الإتصال مع الملف المفتوح في الذاكرة opened_file من الكائن close() هنا قمنا باستدعاء الدالة opened_file.close()
•بعد تشغيل الملف Test.py
سيتم إنشاء الملف arabic.txt
و تخزين النص العربي بداخله. أيضاً سيتم طباعة النص العربي الموجود في الأساس بداخل الملف كالتالي.
السلام عليكم و رحمة الله و بركاته