从零基础接触java第九章第三节

原创 2016年09月12日 08:54:06

  当你们把今天的分享听完后,大家便可以兴奋地告诉自己,我基本已经把java学完了,至于还有什么没学,在本篇结尾我会告诉大家。

  上一节跟大家分享了字节流,今天跟大家延伸一下,除了字节流,还有字节缓冲流,大家会问,字节缓冲流有什么用呢?大家知道,我们的字节流是一个字节一个字节地传输的,所以如果我们传输的文件过大时,便会很慢,于是我们便需要用缓冲字节流来加快我们的传输,扩大输出量输入量,好了,具体实列大家看以下代码:

public class Test1 {
public static void main(String[] args) {
String path = "D:/123.txt";
String path1 = "D:/124.txt";
BufferedInputStream in = null;
BufferedOutputStream out = null;
try {
in = new BufferedInputStream(new FileInputStream(path));
out = new BufferedOutputStream(new FileOutputStream(path1));
byte[] b = new byte[1024];
int len = 0;
while((len = in.read(b))!=-1){
out.write(b,0,len);
}
System.out.println("完毕");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
in.close();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}

大家可以看到以上代码,大致写法和前面的FileOutputStream和FileInputStream一样,只不过我们把File改成了Buffer,由于缓冲流需要传入字节流对象,所以我们在定义缓冲流时同时通过构造函数传递了字节流。唯一的区别大家可以看到的便是我们多定义了一个字节数组byte,然后大小为1024个字节,这表示让我们的文件每次传递大小为1024个字节,然后通过in.read()方法传递进去,这样的话我们文件的传输速度便能达到1024个字节每次,速度便会加快很多,如果大家觉得没感觉,将第一行path后面的路径改个音频文件分别用字节流和缓冲字节流试试看。注意后缀是png还是MP3别搞错了。然后还有一个字符流,分别是FileReader和FileWrite,用法和字节流差不多,只不过字节流是一个字节一个字节地传,而字符流是以字符的形式传递的,然后便是字符流也有缓冲字符流,写法同样是将File改为Buffered,注意,缓冲字符流输出是一行一行输出的, 所以我们不需要再去定义byte,直接按照字节流的输入输出方式即可,只不过要将in.read改为in.readline()。好了,关于java我的分享便结束了,一共九个章节,可能一次性浏览完还是要花大家一天时间,希望能对后期对大家的帮助有一定的用。小编也如释重负,完成了java的所有分享,其实还有网络编程和枚举,这两个小编不会分享,因为小编认为大家后期自己就能学懂。那么恭喜大家,你已经是个java初级程序员了,感谢大家观看,同时最后小编还是强调一句话,有任何错误问题,希望大家能在下面提出,谢谢大家。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

从零基础接触java第七周第三节

前面我跟大家简单地分享了多线程,但是我这儿少了进程和进程之间关系的生产者和消费者,以及线程池大家下来都可以去百度看看。   今天我要跟大家分享的是泛型。什么是泛型?前面我给大家说了类,以及我们定义变...

《MonkeyRunner原理剖析》第九章-MonkeyImage实现原理 - 第三节 - 裸图RawImage

在今后MonkeyDevice原理分析中我们会学习到,当用户通过编写脚本调用MonkeyDevice的getSnapshot方法来获取当前屏幕截图的时候,最终将会通过AdbHelper的getFram...

Machine Learning on Spark——第三节 统计基础(一)

作者:周志湖 微信号:zhouzhihubeyond本文主要内容本文对了org.apache.spark.mllib.stat包及子包中的相关统计类进行介绍,stat包中包括下图中的类或对象: ...

Linux大数据开发基础:第三节:用户和组

http://blog.csdn.net/lovehuangjiaju/article/details/47904673 本节主要内容 理解用户和组的概念用户管理组管理权限分配 ...

学习javascript基础知识系列第三节 - ()()用法

总目录: 通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在cons...
  • isea533
  • isea533
  • 2013年08月25日 13:13
  • 1594

AJAX技术入门 第三节 DOM基础和DOM操作HTML

====================================================== 注:本文源代码点此下载 =============================...

第三节:scala-基础语法

定义变量scala> var hellowvar="hellowvar" hellowvar: String = hellowvar//重新赋值 scala> helloString="second...

Java 第三节 总结

3.1 运算符和表达式 算术运算符 加运算符+:连接两个字符串。例如,“abc”+12的结果为“abc12”;”abc”+1+2=?  “abc”+(1+2)=abc+3 Java语言既可对...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从零基础接触java第九章第三节
举报原因:
原因补充:

(最多只允许输入30个字)