คลาส PrintWriter ใน Java คืออะไร

“PrintWriter เป็นคลาสที่ใช้ในการเขียนข้อมูลรูปแบบใดก็ได้ เช่น int, float, double, String หรือ Object ในรูปแบบของข้อความบนคอนโซลหรือในไฟล์ในภาษาจาวา”
ตัวอย่างเช่น คุณอาจใช้วัตถุ PrintWriter เพื่อบันทึกข้อมูลในไฟล์หรือพิมพ์บนคอนโซล

เหตุใดจึงต้องใช้ PrintWriter หากมี OutputStreams อื่น

วิธีปฏิบัติทั่วไปในการพิมพ์ข้อมูลบนคอนโซลคือการใช้เมธอดSystem.out.print อย่างไรก็ตาม จะง่ายกว่าในการปรับแต่งรูปแบบตามโลแคล ที่ระบุ (มาตรฐานระดับภูมิภาค) ในขณะที่เผยแพร่แอปพลิเคชันทั่วโลกโดยใช้ออบเจกต์PrintWriter เราสามารถพิจารณาการใช้ Locale ตามระบบของคุณได้ในภายหลังในโพสต์นี้

วิธีการใช้คลาส PrintWriter?

สำหรับการใช้PrintWriterคุณต้องอิมพอร์ตคลาสjava.io.PrintWriter จากนั้นหลังจากเริ่มต้นวัตถุแล้ว คุณสามารถใช้มันสำหรับการเขียนบนคอนโซลหรือในไฟล์ตามความต้องการของคุณ ลองดูทั้งสองวิธีในการเริ่มต้น คลาส PrintWriterสำหรับคอนโซลและไฟล์ มีตัวสร้างที่แตกต่างกันหลายตัวในปัจจุบัน แต่ที่นี่เราจะแนะนำสิ่งที่ง่ายที่สุดให้คุณ

เอาต์พุตคอนโซลด้วย PrintWriter

ต่อไปนี้เป็น วัตถุ PrintWrtierเพื่อพิมพ์ข้อความบนคอนโซล

PrintWriter consoleOutput = new PrintWriter(System.out);
ที่นี่ วัตถุ System.outจะถูกส่งผ่านไปยังตัวสร้างเพื่อเขียนบนคอนโซล

เอาต์พุตไฟล์ด้วย PrintWriter

นี่คือ วัตถุ PrintWriterเพื่อเขียนข้อความในไฟล์

PrintWriter fileOutput = new PrintWriter("FileOutput.txt");
ตัวสร้างนี้ใช้ อินพุต สตริงเป็นชื่อไฟล์ สร้างไฟล์ชื่อที่ระบุและเขียนข้อมูลข้อความในนั้น

วิธีการของคลาส PrintWriter

คลาส Java PrintWriterมาพร้อมกับเมธอดที่มีประโยชน์มากมาย แค่เกณฑ์พวกเขามาก็ยากที่จะกลืนเข้าไปแล้ว มาดูกันทีละตัวอย่าง คืออะไรและเราจะนำไปใช้ได้อย่างไร ง่ายๆ

ตัวอย่างที่ 1

ตัวอย่างนี้จะสาธิตการใช้ วัตถุ PrintWriterสำหรับการพิมพ์บนคอนโซล

import java.io.PrintWriter; 

public class PrintWriterDemo {

	public static void main(String[] args) throws Exception {


            // by importing the java.io.PrintWriter class
		PrintWriter consoleOutput = new PrintWriter(System.out);

		consoleOutput.printf("Hey there! This is %S.\n", "Lubaina Khan");
		consoleOutput.print("Today you're exploring the PrinWriter class with Code Gym. ");
		consoleOutput.println("Hope you're having fun!");
		consoleOutput.append("Patience is the key when learning new concepts.\n");
		consoleOutput.append("It all boils down to practise and persistence. :)");

		consoleOutput.flush();
		consoleOutput.close();
	}
}

เอาต์พุต

สวัสดี! นี่คือลูไบนา ข่าน วันนี้คุณกำลังสำรวจคลาส PrinWriter กับ Code Gym หวังว่าคุณจะสนุก! ความอดทนเป็นกุญแจสำคัญในการเรียนรู้แนวคิดใหม่ ทุกอย่างขึ้นอยู่กับการฝึกฝนและความพากเพียร :)

เมธอดที่ใช้ของคลาส PrintWriter


printf(String str, Object arguments); 
เมธอด printf ()ใช้รูปแบบสำหรับสตริงที่จะพิมพ์ ที่นี่ ตัวยึดตำแหน่ง%Sจะถูกแทนที่ด้วยอาร์กิวเมนต์ตัวพิมพ์ใหญ่ที่ส่งผ่านถัดจากสตริง

print(String str);
วิธีนี้จะพิมพ์สตริงที่ส่งไปโดยใช้วัตถุ PrintWriter

println(String str);
มีการพิมพ์ตัวแบ่งบรรทัดหลังเนื้อหาสตริง

append(CharSequence cs);
ลำดับอักขระที่ส่งผ่านไปยังภาคผนวกจะถูกเพิ่มไปยังวัตถุ PrintWrtier

flush();
ล้างเนื้อหาของวัตถุ PrintWriter

close();
ปิดสตรีมการเขียนและทำให้ทรัพยากรที่จัดสรรว่าง

ตัวอย่างที่ 2

ตัวอย่างนี้จะแสดงการใช้ คลาส PrintWriterในการเขียนข้อมูลลงในไฟล์

import java.io.PrintWriter;
import java.util.Date;
import java.util.Locale;

public class PrintWriterDemo {

	public static void main(String[] args) throws Exception {

		try {
                  // by importing the java.io.PrintWriter class
			PrintWriter fileOutput = new PrintWriter("FileOutput.txt");

		      fileOutput.printf(Locale.getDefault(), "Hi, What's the day today? %s.\n", new Date());

			fileOutput.print("Here's an implementation of PrinWriter class for file writing.\n");
			fileOutput.println("Hope Code Gym made it simpler for you to understand.");
			fileOutput.append("One step at a time, and off you go!", 0, 35);

			fileOutput.flush();
			fileOutput.close();

		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

เอาต์พุต

สวัสดี วันนี้วันอะไร อา. 25 ก.ค. 17:30:21 น. PKT 2021 นี่คือการใช้งานคลาส PrinWriter สำหรับการเขียนไฟล์ Hope Code Gym ช่วยให้คุณเข้าใจได้ง่ายขึ้น ทีละขั้นตอนแล้วออกไปเลย!

เมธอดที่ใช้ของคลาส PrintWriter

เรามาพูดถึงวิธีการที่ใช้สำหรับการเขียนไฟล์ที่แตกต่างจากการเขียนบนคอนโซล

printf(Locale locale, String str, Object args); 
ที่นี่คุณสามารถส่งโลแคล (เราใช้ค่าเริ่มต้นของระบบเพื่อการเชื่อมโยงกัน) คุณสามารถใช้อะไรก็ได้ตามความต้องการของคุณ สิ่งนี้สอดคล้องกับการจัดรูปแบบตามภูมิภาค ส่วนที่เหลือของการใช้งานจะเหมือนกับที่เคยเป็นมา

append(CharSequence cs, int beginningIndex, int endingIndex);
คุณสามารถเพิ่มกลุ่มของCharSequence ที่ผ่านไปได้ โดยการระบุดัชนีเริ่มต้นและสิ้นสุดของมัน ที่นี่เราใช้ดัชนีล่าสุด คุณสามารถเล่นกับมันเพื่อดูผลลัพธ์ที่แตกต่างกัน

try{
   ...
} catch (Exception e){
   ...
}
จำเป็นต้องใช้บล็อก try-catch ในการเขียนไฟล์ เป็นการหลีกเลี่ยงข้อยกเว้นใด ๆ ในขณะที่เข้าถึง (เช่น ปัญหาเกี่ยวกับสิทธิ์) หรือสร้างไฟล์ในระบบ

บทสรุป

นั่นเป็นการแนะนำอย่างรวดเร็วเกี่ยวกับการใช้คลาส Java PrintWriter หวังว่ามันจะไม่ล้นหลามสำหรับคุณ หากใช่ เราขอแนะนำให้คุณทำความเข้าใจแต่ละหัวข้อและฝึกฝนไปพร้อมกับการดำเนินการ ยินดีต้อนรับกลับเสมอในกรณีที่มีอุปสรรคใดๆ หมั่นตั้งคำถามและเติบโตต่อไป