English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليميات Java الأساسية

Java流程控制

Java数组

Java面向对象(I)

Java Object-Oriented (II)

Java Object-Oriented (III)

معالجة الاستثناءات Java

قائمة Java List

Java Queue (الصف)

مجموعات Java Map

مجموعات Java Set

إدخال/إخراج Java (I/O)

قراء/كتابة Java

مواضيع أخرى في Java

فئة PrintWriter في Java

في هذا الدرس، سنتعلم من خلال الأمثلة عن PrintWriter في Java وطرق print() وprintf()

يمكن استخدام فئة PrintWriter من حزمة java.io لكتابة البيانات إلى النصوص القابلة للقراءة عادة.

إنها تورث من فئة AbstractWriter.

طريقة عمل PrintWriter

على عكس الكتابة الأخرى، تقوم PrintWriter بتحويل البيانات الاصلية (int، float، char وما إلى ذلك) إلى شكل نصي. ثم تكتب البيانات المعدلة إلى الكتابة.

إلى جانب ذلك، لا تقوم فئة PrintWriter بإطلاق أي استثناءات إدخال/إخراج. على العكس من ذلك، يجب استخدام طريقة checkError() للبحث عن أي أخطاء فيها.

ملاحظة:يحتوي فئة PrintWriter أيضًا على وظيفة غسل تلقائي. مما يعني أن إذا تم استدعاء أحد طرق println() أو printf()، فإنه سيجبر المكتتب على كتابة جميع البيانات إلى الهدف.

إنشاء PrintWriter

لإنشاء مكتتب للطبع، يجب علينا استيراد حزمة java.io.PrintWriter. بعد استيراد الحزمة، يمكننا إنشاء مكتتب للطبع.

1. استخدام كتابة أخرى

// Creates FileWriter
FileWriter file = new FileWriter("output.txt");
// 创建 PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);

في هذا السياق،

  • أنشأنا مكتتباً للطبع، والذي سيكتب البيانات إلى FileWriter

  • autoFlush هو متغير اختياري يستخدم لتحديد ما إذا كان يجب تنفيذ التحديث التلقائي

2. استخدام مخرجات أخرى

// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);

في هذا السياق،

  • أنشأنا مكتتباً للطبع، والذي سيكتب البيانات إلى ملف تم تمثيله من قبل FileWriter

  • autoFlush هو متغير اختياري، يستخدم لتحديد ما إذا كان يجب تنفيذ الغسل التلقائي

3. 使用文件名

// 创建 PrintWriter
PrintWriter output = new PrintWriter(String file, boolean autoFlush);

في هذا السياق،

  • لقد قمنا بإنشاء كاتب كتابة سيرتبط بملف معين

  • autoFlush هو معامل بولياني اختياري يحدد ما إذا كان يجب تنفيذ الغسل التلقائي

ملاحظة:في جميع الحالات السابقة، يستخدم PrintWriter ترميز حروف افتراضي لتحرير البيانات إلى الملف. ولكن، يمكننا أيضًا تحديد ترميز الحروف (UTF8أوUTF16)

//إنشاء PrintWriter باستخدام بعض ترميزات الحروف
PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);

في هذا السياق، نحن نستخدم مجموعة الحروففئة تحدد ترميز الحروف

طرق PrintWriter

يقدم فئة PrintWriter مجموعة متنوعة من الطرق التي تمكننا من طباعة البيانات إلى الإخراج.

طريقة print()

  • print() - طباعة البيانات المحددة إلى الكاتب

  • println() - طباعة البيانات مع حرف النهاية الجديدة إلى الكاتب

import java.io.PrintWriter;
class Main {
  public static void main(String[] args) {
    String data = "This is a text inside the file.";
    try {
      PrintWriter output = new PrintWriter("output.txt");
      output.print(data);
      output.close();
    }
    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

في المثال السابق، قمنا بإنشاء مكتتبة كتابة اسمها output. هذه المكتتبة الكتابة مرتبطة بالملفoutput.txt.

PrintWriter output = new PrintWriter("output.txt");

لل طباعة البيانات في الملف، نحن نستخدم طريقة print().

Here, when we run the programoutput.txtThe file will be filled with the following content.

This is a text inside the file.

طريقة printf()

يمكن استخدام طريقة printf() لطباعة النصوص الم格式ية. تحتوي على 2 معامل: النص الم format و المعامل. على سبيل المثال،

printf("I am %d years old", 25);

في هذا السياق،

  • I am %d years old هو نص م格式ي

  • %d هو بيانات عددية في النص الم格式ي

  • 25 هو معامل

النصوص الم格式ية وتحتوي على بيانات. وستقوم بتبديل البيانات في النص الم格式ي.

لذلك، سيكون%dبديلاً عن25.

مثال: استخدام طريقة printf() من PrintWriter

import java.io.PrintWriter;
class Main {
  public static void main(String[] args) {
    try {
      PrintWriter output = new PrintWriter("output.txt");
      int age = 25;
      output.printf("I am %d years old.", age);
      output.close();
    }
    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

In the above example, we created a printer writer named output. The printer writer is linked to the file output.txt.

PrintWriter output = new PrintWriter("output.txt");

To print formatted text to the file, we used the printf() method.

Here, when we run the programoutput.txtThe file will be filled with the following content.

I am 25 years old.

Other Methods of PrintWriter

MethodDescription
close()Close PrintWriter
checkError()Check if there is an error in the writer and return a boolean result
append()Append the specified data to the writer