English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدرس، سنتعلم من خلال الأمثلة عن FileWriter في Java ومتغيراته
يمكن استخدام كلاس FileWriter في حزمة java.io لتحويل البيانات (بصفتها حروفًا) إلى الملف
أنه يرث كلاس OutputStreamWriter
قبل معرفة المزيد عن FileWriter، تأكد من أنك تفهمملف Java.
لإنشاء كاتب ملف، يجب علينا أولاً استيراد حزمة Java.io.FileWriter. بعد استيراد الحزمة، يمكننا إنشاء كاتب ملف.
1. استخدام الاسم
FileWriter output = new FileWriter(String name);
في هذا السياق، قمنا بإنشاء كاتب ملف، والذي سيتم ربطه بالنص المحدد
2. استخدام كائن الملف
FileWriter input = new FileWriter(File fileObj);
في هذا السياق، قمنا بإنشاء كاتب ملف، والذي سيتم ربطه بالملف المحدد من قبل كائن الملف
في المثال السابق، تم تخزين البيانات باستخدام إ编码 حروف افتراضية
لكن، منذ Java 11، يمكننا أيضًا تحديد نوع إ编码 الحروفUTF8أوUTF16)
FileWriter input = new FileWriter(String file, Charset cs);
في هذا السياق، نستخدم كلاس Charset للتحديد إ编码 الكاتب الملف
يقدم كلاس FileWriter تنفيذًا للمتغيرات المختلفة التي تظهر في كلاس Writer
write() - يكتب حرفًا واحدًا إلى الكاتب
write(char[] array) - يكتب حروف الصف المحددة في الكاتب
write(String data) - يكتب النص المحدد في الكاتب
import java.io.FileWriter; public class Main { public static void main(String args[]) { String data = "هذا هو البيانات في ملف الناتج"; try { // 创建 FileWriter FileWriter output = new FileWriter("output.txt"); // 将字符串写入文件 output.write(data); //关闭 writer output.close(); } catch (Exception e) { e.getStackTrace(); } } }
في المثال السابق، قمنا بإنشاء ملف كاتب يُدعى output. قراء الملفات مرتبطة بـoutput.txtروابط الملف.
FileWriter output = new FileWriter("output.txt");
لإدخال البيانات إلى الملف، استخدمنا طريقة write().
في هذا السياق، عند تشغيل البرنامج،output.txtسيُملأ الملف بالمحتوى التالي.
هذا هو سطر النص داخل الملف.
getEncoding()方法可用于获取用于写入数据的编码类型。例如,
import java.io.FileWriter; import java.nio.charset.Charset; class Main { public static void main(String[] args) { String file = "output.txt"; try { //使用默认编码创建一个FileReader FileWriter output1 = new FileWriter(file); //创建一个FileReader指定编码 FileWriter output2 = new FileWriter(file, Charset.forName("UTF8")); //返回阅读器的字符编码 System.out.println("output1的字符编码: " + output1.getEncoding()); System.out.println("output2的字符编码: " + output2.getEncoding()); // 关闭 reader output1.close(); output2.close(); } catch(Exception e) { e.getStackTrace(); } } }
نتائج الإخراج
تشفير الحروف للـ output1: Cp1252 تشفير الحروف للـ output2: UTF8
في المثال السابق، قمنا بإنشاء كاتب ملفين، يُدعى كل منهما output1 وoutput2.
لم يتم تعيين تشفير الحروف للـ output1. لذلك، يرجع طريقة getEncoding() إلى التشفير الافتراضي.
تعيين تشفير الحروف للـ output2UTF8لذلك، يرجع طريقة getEncoding() إلى تشفير الحروف المحدد.
النصائحنحن قد استخدمنا طريقة Charset.forName() لتعريف نوع تشفير الحروف.
لإغلاق كاتب الملف، يمكننا استخدام طريقة close(). بعد التدعيم على طريقة close()، لا يمكن استخدام الكاتب لتحرير البيانات.
الطريقة | وصف |
---|---|
flush() | إجبار الكاتب على كتابة جميع البيانات الموجودة فيه إلى وجهة الوجهة المحددة |
append() | إدراج الحرف المحدد في الكاتب الحالي |