-
如果希望将数据写到纯文本文件当中,那么可以使用FileWriter类。
-
1.导包
-
import java.io.FileWriter;
-
2.创建,构造方法
-
public FileWriter(String fileName):参数字符串就是文件的路劲名称。
-
FileWriter fw = new FileWriter(“file01.txt”);
-
文件扩展名只能决定默认用什么软件打开文件,不能决定其内容。
-
3.使用,成员方法
-
写数据:public void writer(String str):参数就是需要写到文件中的字符串。
-
关闭流:public void close():关闭,释放相关资源。
-
总结一下:FileWriter基本使用步骤:创、写、关。
-
注意事项:
-
1.千万不要忘记最后调用close方法进行关闭。
-
2.创建的时候,如果提示有可能有异常,那么就鼠标悬停,然后点击Add theows…即可
-
public class Dada {
public static void main(String[] args) throws IOException {
//1.创建一个FileWriter对象
FileWriter fw = new FileWriter(“file01.txt”);
//2.调用write方法写数据
fw.write(“hahahaha”);
//3.调用close方法关闭流
fw.close();
}
} -
FileReder用来将文本文件当中的字符读取到程序当中。
-
使用的步骤:
-
1.导包
-
import java.io.FileReder;
-
2.创建,构造方法:
-
public FileReder(String fileName):参数仍然是文件的路径名。
-
FileReder fr = nwe FileReder(“file06.txt”);
-
如果指定的文件名对应的文件不存在,那么将会直接报错。
-
3.使用,成员方法:
-
读取单个字符:public int read():读取下一个字符。得到对应的ASCII或UUnicode值。
-
关闭释放资源:public void close();
-
使用FileReder的步骤也是三个字:创、读、关。
-
public class Dada6 {
public static void main(String[] args) throws IOException {
FileReader fr = new FileReader(“file.txt”);
int ch;
while((ch = fr.read()) != -1) {
System.out.print((char)ch);
}
fr.close();
}
} -
读写结合:
public class Dada7 {
public static void main(String[] args) throws IOException {
//创建输入流对象
FileReader fr = new FileReader(“a.txt”);
//创建输出流对象
FileWriter fw = new FileWriter(“d.txt”);
//int ch;//表示单个字符
//while((ch = fr.read()) != -1) {
//fw.write(ch);
//}
//fr.close();
//fw.close();
char[] chs = new char[1024];
int len;
while((len = fr.read(chs)) != -1) {
fw.write(chs,0,len);
}
fr.close();
fw.close();
}
} -
在使用FileWriter的时候:
-
1.如果指定的文件不存在,那么会自动创建该文件。
-
2.如果指定的文件已经存在,那么将会覆盖写入。
-
3.如果不希望进行覆盖写入,而是希望进行追加,那么要用另外一种重载形式的构造方法。
-
public class filewriter {
public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter(“file02.txt”,true);//创
fw.write(“dududu”);//写
fw.close();//关
}
} -
如何才能实现换行的效果?
-
换行其实也是一种字符,叫做“换行符”。
-
Windows当中的换行符是:\r\n 这叫做两个字符,一个是\r,一个是\n
-
macOS当中的换行符是:早期是\r,现在是\n
-
Linux当中的换行符是:\n
-
public class Huanhang {
public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter(“file03.txt”);
fw.write(“dada\r\n”);
fw.write("\r\n");
fw.write(“dudu”);
fw.close();
}
} -
FileWriter当中写数据的方法write有5种重载形式:
-
public void write(int ch):参数是单个文字对应的数字(参数ASCII或者Unicode表)
-
public void write(String str):写一个完整的字符串
-
public void write(String str,int offset,int count):写字符串当中的一部分内容
-
public void write(char[] array):写一个完整的字符数组
-
public void write(char[] array,int offset,int count):写字符数组当中的一部分内容
-
public class writer5zai {
public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter(“file05.txt”);
//写单个字符
fw.write(65);//A
fw.write(66);//B
fw.write(67);//C
fw.write(48);//0
fw.write(97);//a
//==================
//写一个完整的字符串
fw.write(“World\r\n”);
fw.write(“Hello”);
//===================
//写一个字符串当中的部分内容
String str = “生前何必久睡,死后何必长眠。”;
fw.write(str,7,6);
//===================
char[] array = {‘J’,‘a’,‘v’,‘a’,’!’};
//写一个完整的字符数组
fw.write(array);
//写一个字符数组的部分内容
fw.write(array,2,3);
fw.close();
}
}
IO流
最新推荐文章于 2024-01-27 16:24:57 发布