在Java中,處理輸入輸出(I/O)主要涉及到兩個類:java.io.InputStream
和 java.io.OutputStream
。這兩個類是Java I/O體系的基礎,它們提供了一系列方法來讀取和寫入數據。
在Java中,可以使用java.io.Scanner
類從控制臺讀取輸入。首先,需要導入java.util.Scanner
包,然后創建一個Scanner
對象,最后使用Scanner
對象的方法(如nextInt()
、nextLine()
等)來讀取不同類型的輸入。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入一個整數:");
int inputNumber = scanner.nextInt();
System.out.print("請輸入一行文本:");
String inputText = scanner.nextLine();
System.out.println("您輸入的整數是:" + inputNumber);
System.out.println("您輸入的文本是:" + inputText);
scanner.close();
}
}
在Java中,可以使用System.out.print()
和System.out.println()
方法向控制臺寫入輸出。System.out
是一個PrintStream
對象,它是java.io.OutputStream
類的一個子類。
public class Main {
public static void main(String[] args) {
int number = 42;
String text = "Hello, World!";
System.out.print("整數:" + number);
System.out.println("文本:" + text);
}
}
Java提供了java.io.FileInputStream
和java.io.FileOutputStream
類來讀取和寫入文件。這兩個類分別繼承自java.io.InputStream
和java.io.OutputStream
。
以下是一個簡單的示例,演示了如何讀取一個文件的內容并將其寫入另一個文件:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileCopy {
public static void main(String[] args) {
String inputFilePath = "input.txt";
String outputFilePath = "output.txt";
try (FileInputStream fis = new FileInputStream(inputFilePath);
FileOutputStream fos = new FileOutputStream(outputFilePath)) {
int data;
while ((data = fis.read()) != -1) {
fos.write(data);
}
System.out.println("文件復制成功!");
} catch (IOException e) {
System.out.println("文件復制失敗:" + e.getMessage());
}
}
}
在這個示例中,我們使用了try-with-resources語句來自動關閉FileInputStream
和FileOutputStream
對象。這是一種更安全的處理I/O資源的方法,可以避免資源泄漏。