信息流接口图(IO流实例)

/* *作者:呆萌老师 *☑csdn认证讲师 *☑51cto高级讲师 *☑腾讯课堂认证讲师 *☑网易云课堂认证讲师 *☑华为开发者学堂认证讲师 *☑爱奇艺千人名师计划成员 *在这里给大家分享技术、知识和生活 *各种干货,记得关注哦! *vx:it_daimeng */

创建与文件关联的字节输出流对象 FileOutputStream fos = newfileOutputStream("c:\\cn8.txt"); //创建可以把字符转成字节的转换流对象,并指定编码OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8");调用转换流,把文字写出去,其实是写到转换流的缓冲区中 osw.write("你好");//写入缓冲区。 osw.close();创建读取文件的字节流对象

InputStream in; try { in = new FileInputStream("d:/aa/5.txt"); // 创建转换流对象 // InputStreamReader isr = new // InputStreamReader(in);这样创建对象,会用本地默认码表读取,将会发生错误解码的错误 InputStreamReader isr = new InputStreamReader(in, "gbk"); // 使用转换流去读字节流中的字节 int ch = 0; while ((ch = isr.read()) != -1) { System.out.println((char) ch); } // 关闭流 isr.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

字符输出流

// TODO Auto-generated method stub File file = new File("d:/aa/5.txt"); try { // 字符输出流 FileWriter fileWriter = new FileWriter(file, true); // 字符输出流 // true代表追加 fileWriter.write("你好"); fileWriter.close(); // 字节输出流 FileOutputStream fileOutputStream = new FileOutputStream(file, true); fileOutputStream.write('a'); fileOutputStream.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

字符输入流

//字符输入流 读 文本文件的读写(.java .txt...) //1.创建对象 File file=new File("d:/aa/4.txt"); //2.创建字符输入流对象 try { FileReader fileReader=new FileReader(file); int a; a= fileReader.read(); //读取一个字符 System.out.println((char)a); char[] arr=new char[3]; fileReader.read(arr);//读取多个字符到数组中 System.out.println(new String(arr)); //循环读取文件的内容 while((a=fileReader.read())!=-1) System.out.println((char)a); fileReader.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

字符输出流 文件

//字符输出流 写出 //1.创建文件对象 File file=new File("d:/aa/5.txt"); //2.创建字符输出流 try { FileWriter fileWriter=new FileWriter(file); fileWriter.write("bb\r\n"); //换行 fileWriter.write("呆萌"); fileWriter.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

//字节输入流 从文件中读数据进来 一个字节一个字节的读取 (图片 视频文件的读写) //(一个英文字符或数字字符对应一个字节 一个中文字对应的是两个字节,所以读中文要用字符流) //1.创建文件对象 File file=new File("d:/aa/2.txt"); //2.创建一个输入流对象 try { FileInputStream fileInputStream=new FileInputStream(file); //3.读数据 int a=fileInputStream.read(); //读取下一个字符 读到了返回当前字符的ascII码 读到文件结尾 则返回-1 System.out.println((char)a); a=fileInputStream.read(); System.out.println((char)a); //读取多个字节到数组中 byte[] arr=new byte[3]; fileInputStream.read(arr); //读取3个字节存入arr数组中 System.out.println(new String(arr, 0, 3)); //读取整个文件 while((a=fileInputStream.read())!=-1) System.out.print((char)a); //关闭文件 fileInputStream.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

信息流接口图(IO流实例)(1)

字节输出流 文件操作

//字节输出流 将数据写到文件中 //1.创建文件对象 File file=new File("d:/aa/3.txt"); //2.创建字节输出流 try { FileOutputStream fileOutputStream=new FileOutputStream(file); //3.写内容 fileOutputStream.write('a'); //一次写入一个字节 byte[] arr=new byte[]{'b','c','d'}; //写入一个byte类型的数组 String string="daimeng"; byte[] brr=string.getBytes(); //可以将字符串转换为字节数组 fileOutputStream.write(brr); fileOutputStream.close(); //关闭流 } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }

信息流接口图(IO流实例)(2)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页