Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

การเปลี่ยนเส้นทางเอาต์พุต System.out.println() ไปยังไฟล์ใน Java


ยื่นชื่อ ออก ของคลาส System แสดงถึงเอาต์พุต Stream มาตรฐาน ซึ่งเป็นอ็อบเจ็กต์ของ PrintStream ชั้นเรียน

เมธอด println() ของวิธีนี้ยอมรับค่าใดๆ (ของ Java ประเภทใดก็ได้ที่ใช้ได้) พิมพ์และสิ้นสุดบรรทัด

โดยค่าเริ่มต้น console (หน้าจอ) เป็นเอาต์พุต Stream มาตรฐาน (System.in) ใน Java และเมื่อใดก็ตามที่เราส่งค่าสตริงใด ๆ ไปยังเมธอด System.out.prinln() มันจะพิมพ์สตริงที่กำหนดบนคอนโซล

การเปลี่ยนเส้นทาง System.out.println()

setOut() เมธอดของคลาส System ใน java ยอมรับอ็อบเจ็กต์ของ PrintStream และทำให้เป็นสตรีมเอาต์พุตมาตรฐานใหม่

ดังนั้น เพื่อเปลี่ยนเส้นทางเอาต์พุต System.out.println() ไปยังไฟล์ -

  • สร้างวัตถุของคลาสไฟล์

  • สร้างอินสแตนซ์คลาส PrintStream โดยส่งออบเจ็กต์ File ที่สร้างขึ้นด้านบนเป็นพารามิเตอร์

  • เรียกใช้เมธอด out() ของคลาส System ส่งออบเจ็กต์ PrintStream ไปให้

  • สุดท้าย พิมพ์ข้อมูลโดยใช้เมธอด println() และจะถูกเปลี่ยนเส้นทางไปยังไฟล์ที่แสดงโดยอ็อบเจกต์ File ที่สร้างขึ้นในขั้นตอนแรก

ตัวอย่าง

import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
public class SetOutExample {
   public static void main(String args[]) throws IOException {
      //Instantiating the File class
      File file = new File("D:\\sample.txt");
      //Instantiating the PrintStream class
      PrintStream stream = new PrintStream(file);
      System.out.println("From now on "+file.getAbsolutePath()+" will be your console");
      System.setOut(stream);
      //Printing values to file
      System.out.println("Hello, how are you");
      System.out.println("Welcome to Tutorialspoint");
   }
}

ผลลัพธ์

From now on D:\sample.txt will be your console