这期内容当中小编将会给大家带来有关如何在Java中利用字节流实现一个文io编程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
案例1:
演示FileInputStream类的使用(用FileInputStream的对象把文件读入到内存)
首先要在E盘新建一个文本文件,命名为test.txt,输入若干字符
public class Demo_2 { public static void main(String[] args) { File f=new File("e:\\test.txt"); //得到一个文件对象f,指向e:\\test.txt FileInputStream fis=null; try { fis=new FileInputStream(f); //因为File没有读写的能力,所以需要使用FileInputStream byte []bytes=new byte[1024]; //定义一个字节数组,相当于缓存 int n=0; //得到实际读取到的字节数 while((n=fis.read(bytes))!=-1){ //循环读取 String s=new String(bytes,0,n); //把字节转成String System.out.println(s); } } catch (Exception e) { e.printStackTrace(); }finally{ //关闭文件流必须放在这里 try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } }}
运行程序,控制台输出test.txt中输入的字符。
案例2:
演示FileOutputStream的使用(把输入的字符串保存到文件中)
public class Demo_3 { public static void main(String[] args) { File f=new File("e:\\ss.txt"); FileOutputStream fos=null; //字节输出流 try { fos=new FileOutputStream(f); String s="你好,疯子!\r\n"; //\r\n为了实现换行保存 String s2="24个比利"; fos.write(s.getBytes()); fos.write(s2.getBytes()); } catch (Exception e) { e.printStackTrace(); }finally{ try { fos.close(); } catch (IOException e) { e.printStackTrace(); } } }}
打开E盘名为ss.txt的文本文档,存在输入的字符。
案例3:图片拷贝
首先在E盘准备一张图片,命名为a.jpg
public class Demo_4 { public static void main(String[] args) { //思路 先把图片读入到内存,再写入到某个文件 //因为图片是二进制文件,只能用字节流完成 FileInputStream fis=null; //输入流 FileOutputStream fos=null; //输出流 try { fis=new FileInputStream("e:\\a.jpg"); fos=new FileOutputStream("d:\\a.jpg"); byte []bytes=new byte[1024]; int n=0; //记录实际读取到的字节数 while((n=fis.read(bytes))!=-1){ //read函数返回读入缓冲区的字节总数 fos.write(bytes); //输出到指定文件 } } catch (Exception e) { e.printStackTrace(); }finally{ try { fis.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); } } }}
打开D盘,点击a.jpg,图片正常显示即运行成功。
上述就是小编为大家分享的如何在Java中利用字节流实现一个文io编程了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网行业资讯频道。