`
java从入门到放弃
  • 浏览: 43795 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java从0开始学习第十一课-IO也是非常简单的

阅读更多
static void writeFile(String fileName,String text) throws IOException{  
        FileWriter fw=new FileWriter(fileName);  //获取文件写入器  
        BufferedWriter bw=new BufferedWriter(fw); //将文件写入器转成缓存写入器  
        bw.write(text); //缓存写入器写入内容  
        bw.close();  
    }  

 

     我们知道怎么去读取txt文件的内容,同时也知道怎么把内容写进去了,但是,我们真的熟悉io了吗?这节课,我们要知道非常吊的一些知识:1、什么流,2、字节流和字符流是什么?他们有什么区别?废话少说了,先上图:



 

我草,这个图怎么这么丑啊!!!看来我是不适合当前端工程师了,我想好了,必须选择后端啊,选择服务端或者大数据!!!!等做完这个系列教学,我就给大家做一个hadoop教学篇(我现在还一点都没学过呢,不过先把牛逼吹起来)。

 

    大家看,流就是一条小河,我们要传输的数据就是河里的水,只有建立了流,我们的java程序才可以跟数据源(txt,xml,doc···)等进行愉快的玩耍,你们知道什么是流了吗??

 

字节流:就是以字节(byte)为基本单位的流。InputStream,OutputStram

字符流:就是以字符(char)为基本单位的流。Reader,Writer

大家知道区别了吗?

我们看看上一节课的读写文件的程序:

 static String readFile(String fileName) throws IOException{  
        StringBuilder sb=new StringBuilder(); //这个就是咱们要返回的数据  
        FileReader fr=new FileReader(fileName); //获取文件阅读器 fr  
        BufferedReader br=new BufferedReader(fr); //将文件阅读器的内容装进缓存里  
             String a;   
        while((a=br.readLine())!=null){ //将br的内容按行读出来,并且判断是不是空  
            sb.append(a);              //讲内容添加到sb中  
            sb.append("\n");            //换行  
        }  
        return sb.toString();  
    } 
  1. static void writeFile(String fileName,String text) throws IOException{  
  2.         FileWriter fw=new FileWriter(fileName);  //获取文件写入器  
  3.         BufferedWriter bw=new BufferedWriter(fw); //将文件写入器转成缓存写入器  
  4.         bw.write(text); //缓存写入器写入内容  
  5.         bw.close();  
  6.     }  
 

 大家知道这是什么流来实现的吗?以大家的智慧,用屁股都能知道,这个是用字符流来实现的。以后我们只要看到(reader,writer)这2个家伙,我们就知道了,他是字符流。我还写了一个非常牛逼的方法:copy文件,大家如果项目需要用到这个(肯定会的),可以直接拿去用,大家用爽了,请不要忘记我大佬琛啊···

static void copy(File from, File to) {
		try {
			FileInputStream fis = new FileInputStream(from);
			FileOutputStream fos = new FileOutputStream(to);
			BufferedInputStream bis = new BufferedInputStream(fis);
			BufferedOutputStream bos = new BufferedOutputStream(fos);
			int c;
			while ((c = bis.read()) != -1) {
				bos.write(c);
			}
			bis.close();
			bos.close();
			fis.close();
			fos.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

 

 

OK,今天的课结束了,是不是超级简单啊??

 

ps:我的梦想就是写一本java的书,我发现了现在全世界的java教学课本都非常非常枯燥乏味,看起来像吃屎那么恶心。我将来一定要写一本非常非常有趣的java教程,首先做成pdf放在网上,随便大家下载。

 

  • 大小: 7.9 KB
分享到:
评论
1 楼 何岗村民 2016-06-08  
我支持你啊 亲爱的楼主

相关推荐

    黑马程序员_毕向东_Java基础视频教程第18天-11-IO流(文本文件读取方式二).zip

    黑马程序员_毕向东_Java基础视频教程第18天-11-IO流(文本文件读取方式二).zip

    java教程-每日一课,27天java从入门到进阶

    精品java学习教程,原理讲解+源码实战 27天实现java从入门到进阶 第一天:语言环境 第二天:常量变量 第三天:流程控制 第四、五天:方法与数组 第六天:类 第七天:对象的出生 第八天:类与类继承 第九天:具体到...

    Java SE完整版精品优质课件 自学入门必看的优秀Java基础知识培训教案 第10章_IO(共56页).pptx

    特别适合新入门自学的新手同学,也适合老手回顾学习,巩固知识 第1章 Java语言概述 第2章 基本语法 第3章 面向对象编程 第4章 高级类特性1 第5章 高级类特性2 第6章 异常处理 第7章 Java集合 第8章 泛型 第9章 注解...

    完整版 杭州电子科技大学JAVA语言程序设计 JAVA_07 IO输入输出(共30页).ppt

    JAVA_11网络程序设计\第11章上机练习题.doc JAVA_11网络程序设计\邮件发送源码.rar JAVA_12 Swing\SwingTest.java JAVA_13 JDBC\Connec.java JAVA_13 JDBC\mysql-5.5.11-win32(1).msi JAVA_13 JDBC\SQLyog832Trial....

    第一行代码Java源代码第11章课程代码JavaIO编

    第一行代码Java源代码第11章【课程代码】JavaIO编程共20页.pdf.zip

    Java&OOP-电子档源码+课件

    第一章:Java 简介第二章:Java 语言基础第三章:面向对象的概念和 Java 实现-1第四章:面向对象的概念和 Java 实现-2第五章:异 常第六章...Swing - I 第十一章:Swing II第十二章:Swing III第十三章:JDBC 基础知识

    JAVA基础教程

    第 1 部分 Java基础程序设计 •Java语言介绍 •简单的 Java 程序 •Java 中的变量与数据类型 •运算符、表达式与语句 •循环与选择结构 ...--第十三章 Java 网络程序设计 附录 JAVA定义格式

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    Java基础入门学习教程PPT课件 JAVA语言程序设计 JAVA_03 JAVA语言基础 位运算(共21页).ppt

    JAVA_1 Java概述与应用 前言 学习java前的准备工作 JAVA_2 面向对象(OO)程序设计概念 JAVA_3 JAVA语言基础 位运算 JAVA_3 JAVA语言基础 JAVA_4 Java面向对象特性 JAVA_5 高级语言特征 JAVA_6 异常处理Exceptions ...

    第11讲 Java提供了哪些IO方式? NIO如何实现多路复用?1

    第三,在 Java 7 中,NIO 有了进一步的改进,也就是 NIO 2,引入了异步非阻塞 IO 方式,也有很多人叫它 AIO(Asynchronous IO)

    Java开发详解.zip

    000000_【课程介绍 —— 写在前面的话】_Java学习概述笔记.pdf 010101_【第1章:JAVA概述及开发环境搭建】_JAVA发展概述笔记.pdf 010102_【第1章:JAVA概述及开发环境搭建】_Java开发环境搭建笔记.pdf 010201_【第2...

    java开源包11

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    java开源包10

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    毕向东 Java 课件

    毕向东 Java ...第十一章:反射机制 310-315 第十二章:正则表达式 315-322 第十三章:HTML语言 322-335 第十四章:CSS语言 335-341 第十五章:JavaScript 语言 341-375 第十六章:DOM 375-429

    Java SE完整版精品优质课件 自学入门必看的优秀Java基础知识培训教案 第11章_多线程(共54页).pptx

    特别适合新入门自学的新手同学,也适合老手回顾学习,巩固知识 第1章 Java语言概述 第2章 基本语法 第3章 面向对象编程 第4章 高级类特性1 第5章 高级类特性2 第6章 异常处理 第7章 Java集合 第8章 泛型 第9章 注解...

    java开源包1

    BlueLeech是一个开源程序,它从指定的URL开始,搜索所有可用的链接,以及链接之上的链接。它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4...

    java读取文件夹中视频的视频信息.视频的大小,时长,名字等等

    92分2秒---143.46M---LabView02---第11章文件的IO及保存.wmv---F:/Resource/video/硬件/AltiumDesigner/LabView02-第11章文件的IO及保存.wmv 37分22秒---58.09M---LabView03---第12章LabVIEW的通信.wmv---F:/...

    Java从入门到精通.pdf

    PDF包含了十四个大模块:Java基础知识,数据结构,算法,Java集合框架,Java8新特性,操作系统,网络原理,Java多线程及并发编程,Java的IO模型及网络编程,JVM,Mysql,JavaWeb和一个仿Tomcat实现的简易版HTTP...

Global site tag (gtag.js) - Google Analytics