1.利用I/O流來寫文件和讀取文件內容
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
public class Exercise05 {
public static void main(String[] args) throws IOException {
File file=new File("D:\\簡介.txt");
if (!file.exists()) {
file.createNewFile();
}
//創建一個字符串,表示要寫入的內容
String content="這是第五題";
//創建輸出流的對象
OutputStream osOutputStream=new FileOutputStream(file);
//調用write方法寫入
osOutputStream.write(content.getBytes());
//關閉相關對象,釋放資源
osOutputStream.close();
if (file.isFile()) {
// 以字節流方法讀取文件
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
// 設置一個,每次 裝載信息的容器
byte[] buf = new byte[1024];
// 定義一個StringBuffer用來存放字符串
StringBuffer sb = new StringBuffer();
// 開始讀取數據
int len = 0;// 每次讀取到的數據的長度
while ((len = fis.read(buf)) != -1) {// len值爲-1時,表示沒有數據了
// append方法往sb對象裏面添加數據
sb.append(new String(buf, 0, len, "utf-8"));
}
// 輸出字符串
System.out.println(sb.toString());
} catch (IOException e) {
e.printStackTrace();
}
} else {
System.out.println("文件不存在!");
}
}
}
也可以使用FileReader讀取文本文件
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;
import java.io.Reader;
public class Exercise {
public static void main(String[] args) throws IOException {
File file=new File("D:\\簡介.txt");
if (!file.exists()) {
file.createNewFile();
}
//創建一個字符串,表示要寫入的內容
String content="這是第五題";
//創建輸出流的對象
OutputStream osOutputStream=new FileOutputStream(file);
//調用write方法寫入
osOutputStream.write(content.getBytes());
//關閉相關對象,釋放資源
osOutputStream.close();
Reader fis=new FileReader(file);
int ch;
while ((ch=fis.read())!=-1) {
System.out.print((char)ch);
}
fis.close();
}
}