أهلا ومرحبا.
في هذه المحاضرة أريد توفر حلاً
لتحدينا السابق ، وهو التحويل ملف يحتوي على أحرف صغيرة
لملف يحتوي على أحرف كبيرة.
في غضون ذلك ، سنقوم بإنشاء ملف مؤقت ، لذلك سنحتاج
إلى إعادة التسمية والحذف وما إلى ذلك.
والمخرج النهائي لـ سيكون البرنامج هو الملف.
سنقرأ في الملف ذلك تم تحويله بالفعل إلى أحرف كبيرة.
لذلك دعونا نطرح الكود كتل ، إنشاء مشروع.
سأقول مشروع جديد ، وحدة التحكم
التطبيق ، انتقل c وسيطلق على هذا تحويل ملف صغير.
نحن فقط ذاهبون إلى يكون هذا هو هدفنا الرئيسي. ج.
نريد أن نتأكد من أننا نصنع عنوان io القياسي
لدينا لأننا سنقرأ ونكتب واستخدام fopen وما إلى ذلك.
لذلك ما أحب أن أفعله دائمًا هو قم بإنشاء الملف في المقدمة.
لذلك سأقوم هنا بتحديد ثابت لاسم ملفي.
دعنا نسمي هذا تعريف.
وهذه المرة سوف نسمي الاختبار. نص.
ولذا سنقول فقط اسم الملف هو كل الأحرف الاستهلالية.
انا احب عمل ذلك الاصطلاح
ثم سأقوم بذلك بالفعل قم بإنشاء اسم الملف في مشروعنا.
لذا مرة أخرى ، أقوم بتخزين ملفاتي داخل دليل التنزيلات الخاص بي.
هذا حيث كل ما عندي يتم تخزين المشاريع.
وفي هذه الحالة لدينا مشروع يسمى تحويل ملف صغير.
سأقوم بوضعه بشكل صحيح في
نفس الدليل ، حتى أتمكن من تشغيله من IDE.
سأقوم بإنشاء ملف نصي جديد.
سأقوم بتسمية هذا الاختبار. نص.
وسأطرحه ، وسأضع بعض الأحرف
الصغيرة والكبيرة.
لنفترض أن جايسون يختبر. تمام، مهما كان الاختبار ، فبعضها أحرف كبيرة ، وبعضها
صغير في النتيجة النهائية ، ستكون
دائمًا أحرفًا كبيرة ، وتحديًا آخر.
هناك نذهب.
إذن النتيجة النهائية لهذا سيتم اختبار الملفات. txt مع كل هذه الأحرف
الكبيرة.
لكننا سنحفظه بـ بعض الأحرف الكبيرة وبعض الأحرف الصغيرة.
الآن قمنا بإنشاء ملفنا الآن يمكننا بالفعل القيام
ببعض القراءة والكتابة.
سأقوم بإنشاء ملفين المؤشرات مع ملف كل حالة الأحرف
الكبيرة ، وسأقول star fp.
سأقوم بتهيئة ذلك إلى null ، ثم
سأقوم بإنشاء مؤشر ملف آخر نجمة fp1 وتساوي أيضًا قيمة خالية.
مرة أخرى أحتاج اثنين هنا لأن سأقوم بالقراءة
والكتابة لفصل الملفات ، ملف مؤقت بشكل أساسي.
سأقوم أيضًا بإنشاء شخصية متغير ، وهو الحرف الذي نقرأه
في استخدام fgetc.
وسأترك ذلك أيضًا متساويًا إلى null أيضًا أو أفضل من ذلك ، سأتركه
عبارة عن سلسلة فارغة.
أول شيء يجب أن أفعله هو أنا تحتاج إلى فتح
الملف في وضع القراءة للملف الأول وهو fp و الملف الثاني سيكون ملف مؤقت.
لذلك سأقول fp يساوي fopen.
سأستخدم ملف اختبار اسم الملف. نص.
إذن اسم الملف ، وأنا ذاهب لفتحها للقراءة فقط.
ثم أريد أن أفعل تأكد من أن هذا فارغ.
لذلك سأقول إذا كان fp يساوي صفرًا
، ثم سأعيد سالب 1.
ثم أريد إنشاء ملف temp الخاص بي.
لذلك أنا ذاهب إلى هنا إنشاء ملف مؤقت.
وفي هذه الحالة سأقوم بذلك فتح ملف للكتابة.
لذا سأستخدم مؤشر fp1 الخاص بي ، وسأقول fopen.
هذا واحد سأتصل به فقط مؤقت. نصًا ، فسيتم إنشاؤه إذا
لم يكن موجودًا.
ثم سأضع w لأنني سأكتب
إليها اكتب فقط.
مرة أخرى ، ما أريد أن أفعله هنا أريد التأكد
من أن fp1 لا يساوي قيمة خالية.
لذلك سأقول fp1.
إذا كانت تساوي لا شيء ، فأنا فقط سأعيد واحدًا سلبيًا.
لذا فتحت الآن ملفين ، واحد للقراءة وواحد للكتابة.
الكتابة لملف مؤقت.
وما أريد أن أفعله بعد ذلك هو ما أريده لبدء القراءة من الملف ثم كتابة
جميع الأحرف الكبيرة.
لذلك أريد أن أضيف حلقة while إلى اقرأ
وأريد أن أقول بينما نوع بيانات الحرف ch يساوي fgetc ، وأريد أن أقرأ
من الاختبار الخاص بي. نص ، لذلك fp وأريد أن أفعل ذلك حتى لا أصل إلى نهاية الملف.
لذلك أستطيع أن أقول لا يساوي eof.
Eof ثابت خاص.
داخل حلقة أثناء بلدي ، أريد أن تحقق مما إذا كانت أي من الأحرف التي أقرأها
صغيرة.
لذلك أريد أن أقول ما إذا كان هو ch أقل ، إذا وجدت حرفًا صغيرًا
، فأنا أريد فقط تعيين الحرف
ليكون الأحرف الكبيرة.
إذن يمكنني القول إن ch يساوي ch ناقص 32.
هذا سوف يحول الشخصية إلى حرف كبير.
ثم بعد أن قمت بتحويله ، إما أنه تم تحويله أم لا ، فهو كبير أم لا ، ثم أنا
تريد كتابتها إلى ملفي المؤقت.
لذلك يمكنني أن أقول هنا fputc.
ويمكنني فقط أن أقول شخصيتي الذي أريد كتابته ومؤشر
الملف وهو fp1.
لذلك في كل مرة أقرأ فيها شخصية ، أنا أكتبه إلى ملفي المؤقت.
وإذا كانت صغيرة ، فأنا أقوم بالتحويل إلى الأحرف الكبيرة ثم كتابتها.
لذا فإن نهاية حلقة while هذه هي لدي ملف مؤقت
يحتوي على جميع الأحرف من اختبار. نص بأحرف كبيرة.
وهكذا انتهيت من كليهما تلك الملفات قراءة وكتابة.
لذلك يمكنني أن أقول fclose fp و fclose fp1.
أريد الآن إعادة تسمية درجة الحرارة الخاصة بي ملف للاختبار الخاص بي. ملف نصي.
لذا يمكنني هنا أن أقول إعادة التسمية ، استدعاء وظيفة إعادة
التسمية ، ويمكنني أن أقول temp. نص هذا ما أريد إعادة تسميته.
والشخص الذي أريده إعادة التسمية اختبار. نص أو استخدم ثابتي
وهو اسم الملف.
لا يزال لدي ملف مؤقت تم إنشاؤه.
لذلك أريد حذف ملف temp.
لذا قم بإزالة ملف temp.
هنا يمكنني استدعاء الإزالة وظيفة وتمريرها في درجة الحرارة. نص.
ثم آخر شيء أريده
أريد أن أطبع محتويات اختباري. ملف نصي ، والذي سيتم تحويلها إلى أحرف كبيرة.
بدلاً من إغلاق fp لأن هذا يشير إلى الاختبار. النص ، لم أتمكن من إغلاقه الآن
، يمكنني ذلك فقط أغلق fp1 لأن fp1 كان
درجة الحرارة. النص وهذا هو واحد أقوم بإعادة تسميته وإزالته.
في الواقع يجب أن أغلق لأنني أعدت تسميته.
لذلك سأضطر إلى إغلاق fp.
الآن في السطر 43 ، أريد إعادة الفتح fp لأنني الآن أريد قراءة المحتويات
وطباعتها.
لذلك يمكنني أن أقول اسم ملف fp fopen أو آسف اسم الملف وأريد قراءته.
لذلك سأقول فقط r.
مرة أخرى ، أريد أن أفعل تأكد من أنها ليست فارغة.
وإذا كانت تساوي لاغ ، أريد العودة.
وأنا فقط أريد أن أقول إرجاع سالب واحد.
يمكنني طباعة بعض المدخلات.
ثم هنا أريد أن أقرأ البيانات وطباعتها فقط.
لذلك يمكنني أن أفعل حلقة أخرى.
لم نطبع أي شيء بعد ، لذا يجب أن نكون
قادرين على القول فقط بينما ch يساوي fgetc fp وليس مساويًا لـ eof.
وما نريد أن نفعله هو نحن فقط تريد طباعة الفصل.
لذلك يمكننا أن نقول في المائة c ch ، وبعد ذلك انتهينا جميعًا.
ثم مرة أخرى ، في النهاية ، نحن نريد إغلاق هذا الملف الأخير وهو fp ونريد
تعيين fp على قدم المساواة إلى null و fp1 يساوي null.
لذلك دعونا نتأكد من أن هذا يبني.
لذلك نحن على ما يرام.
نحن قادرون على التجميع ووضع فاصلة منقوطة في خط 54 كان لدي القولون هناك.
لذلك إذا عدنا إلى الوراء من خلال هذا الكود ، نقوم بإنشاء
اثنين من مؤشرات الملفات.
لدينا ثابتنا.
نفتح ملف واحد.
نقرأ منه.
وبينما نقرأ ، نحن اكتبه في ملف مؤقت.
ثم نقوم بحذف ملف temp.
علينا حذف كلا الملفين نحن نقرأ من وملف temp لأنه يتعين علينا
إعادة تسمية وإزالة.
لا يمكننا استدعاء إعادة التسمية أو الإزالة في ملف وظيفة أو في ملف مفتوح بالفعل ، لذلك يتعين
علينا إغلاقها.
ثم نعيد فتح و نطبع البيانات.
لذلك نقوم بتشغيل هذا.
يجب أن نرى الإخراج مع كل معلومات الشخصية من.
لذلك عندما نقوم بتشغيل هذا البرنامج ، ما سنراه هو طباعة كل شيء بأحرف كبيرة.
لذا مرة أخرى ، نقوم بتشغيلها ، إنها تطبع من كل شيء بأحرف كبيرة.
إذا نظرنا إلى الملف على القرص ، يمكننا أن ننظر في الاختبار. نص ، وسنلاحظ ذلك الآن يحتوي على
كل شيء بأحرف كبيرة.
مرة أخرى ، إذا أردنا تغيير هذا وتغيير بعض الأحرف الصغيرة.
لذلك نحفظها هنا بأحرف صغيرة نقوم بتشغيل البرنامج ويقوم
بتحويل كل شيء إلى أحرف كبيرة.
مرة أخرى ، إذا قمنا بتشغيل هذا ، اطبعها بأحرف كبيرة.
ننظر إليها وكلها بأحرف كبيرة.
لذلك برنامج صغير لطيف سيؤدي ذلك إلى تحويل الأحرف
الصغيرة إلى أحرف كبيرة.
واضح جدا ، نحن باستخدام وظائفنا الهامة
هنا ، وهي مؤشرات الملفات fopen.
ثم نستخدم اللطيف fclose إزالة وإعادة تسمية.
ثم fopen و fgetc.
إذا كان لديك أية أسئلة، يرجى مراسلتي بالبريد الإلكتروني.
سأحفظ ملف المصدر هذا كملف مضغوط ملف حتى تتمكن من إلقاء نظرة عليه.
شكرًا لك.