文件IO流

网友投稿 627 2022-11-01

文件IO流

文件IO流

首先IO流基本操作步骤

1.实例化对象,参数传递目的地(多态) 2.调用方法操作数据 3.关闭流

一、字节输出流 :(OutputStream),文件通常使用该类的子类FileOutStream,以多态的方法进行操作

>1.构造方法:FileOutputStream(File file)传递一个File类对象或者引用 FileOutputStream(File file,boolean append)第一个参数传递一个File类对象或者引用,第二个参数如果是true,则表示在文件末尾追加内容,而不是写入文件开始处 FileOutputStream(String name)传入目的地字符串 FileOutputStream(String name,boolean)为true则追加 2.主要方法: write(byte[ ] b)参数为字节数组 write(byte[ ] b,int off,int len)写入字符串,从off开始,长度为len

public class Demo03 { public static void main(String[] args) throws IOException { //创建文件实例 File file=new File("G:"+File.separator+"demo.txt"); //判断路径是否存在,如果不存在,则创建该路径 if(!file.getParentFile().exists()) file.getParentFile().mkdirs(); //判断文件是否存在,若不存在,则创建该文件 if (!file.exists()) { file.createNewFile(); } String bys="\r\nsks"; //将bys字符串转换为字节数组 byte[] bytes=bys.getBytes(); //int len=bytes.length; //多态,输出流实例化 OutputStream file1 = new FileOutputStream(file,true); //写入操作 file1.write(bytes,0,5); //关闭流 file1.close(); }}

二、字节输入流(InputStream),文件操作通常使用该子类FileInputStream类来实现

> 1.构造方法 FileInputStream(File file)传入File类对象或者引用 FileInputStream(String name)传入路径字符串 2.主要方法 write(byte[ ] b) 读取b.length个字节 write(byte[ ] b,int off,int len)读取最多len个字节

public class Demo04 { public static void main(String[] args) throws IOException { //创建文件实例 File file = new File("G:" + File.separator + "demo.txt"); //输入流实例化 FileInputStream fileInputStream = new FileInputStream(file); byte[] bytes = new byte[512]; //读入len个字节到字节数组中去 fileInputStream.read(bytes,0,5); //转换为字符串 String content=new String(bytes); System.out.println(content); //关闭流 fileInputStream.close(); }}

三、字符输出流(Writer) 文件通常使用该子类FileWriter类进行操作

> 1.构造方法 FileWriter(File file)参数为File类对象 FileWriter(File file ,boolean append)append为true则在文件末尾追加数据 FileWriter(String fileName)文件路径 FileWriter(String fileName,boolean append)与上面类似 2.主要方法 write(char[ ] cbuf)写入字符数组 write(char[ ] cbuf,int off ,int len)写入字符数组的一部分 write(String str)写入字符串 write(String str,int off,int len)写入字符串的一部分

public class Demo06 { public static void main(String[] args) throws IOException { File file = new File("G:" + File.separator + "demo.txt"); FileWriter fileWriter = new FileWriter(file); String s="zms"; //转换为字符串 char[] chars =s.toCharArray(); fileWriter.write(chars); fileWriter.close(); }}

四、字符输入流Reader通常使用该子类FileReader进行操作

> 1.构造方法: FileWriter(File file)参数为File类对象 FileWriter(String fileName)文件路径 2.主要方法 write(char[ ] cbuf)读入到字符数组 write(char[ ] cbuf,int off ,int len)读入到字符数组的一部分 skip(long n)跳过某字符

public class Demo08 { public static void main(String[] args) throws IOException { File file = new File("G:" + File.separator + "demo.txt"); if (!file.getParentFile().exists()) file.getParentFile().mkdirs(); if (!file.exists()) { file.createNewFile(); } FileInputStream stream = new FileInputStream(file); Reader r = new InputStreamReader(stream); char[] chars = new char[124]; r.read(chars); String s = new String(chars); System.out.println(s); r.close(); stream.close(); System.getProperties().list(System.out); }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:推荐一下小程序开发(小程序开发推荐伙伴云)
下一篇:线程池怎么创建线程(线程池创建线程的好处)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~