FileReader和FileWriter是字符流,即按照字符来操作io
FileReader相关方法:
1、new FileReader(File/String)
2、read():每次读取单个字符,返回该字符串,如果到文件末尾返回-1
3、read(char[]):批量读取多个字符到数组,返回读取到的字符数,如果到文件尾返回-1
相关API:
new String(char[] c):将char[]转换成String
new String(char[],int off,int len):将char[]的指定部分转换成String
public class Study {
@SuppressWarnings({"all"})
public static void main(String[] args) {
String filePath = "d:\\story.txt";
FileReader fileReader = null;
int read = 0;
try {
fileReader = new FileReader(filePath);
while ((read = fileReader.read()) != -1){
System.out.print((char) read);
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if (fileReader != null)
fileReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
FileWriter相关方法:
1、new FileWriter(File/String):覆盖模式,相当于流的指针在首端
2、new FileWriter(File/String,true):追加模式,相当于流的指针在尾端
3、write(int):写入单个字符
4、write(char[]):写入指定数组
5、write(char[],off,len):写入指定数组的指定部分
6、write(String):写入整个字符串
7、write(String,off,len):写入字符串的指定部分
相关API:
String:toCharArray:将String转换成char[]
public class Study {
@SuppressWarnings({"all"})
public static void main(String[] args) {
String filePath = "d:\\note.txt";
FileWriter fileWriter = null;
String write = "风雨之后,定见彩虹";
try {
fileWriter = new FileWriter(filePath);
fileWriter.write(write);
System.out.println("写入成功...");
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if (fileWriter != null)
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}