java 中流的使用
Java中的流,可以从不同的角度进行分类。
一、按照数:输入流和输出流。
输出流:
输入流:
因此输入和输出都是从程序的角度来说的。
二、按照处理数据单位不同可以分为:字节流和字符流。
字节流和字符流的原理是相同的,只不过处理的单位不同而已,字节流、字符流,两类都分为输入和输出操作。
以下是java中io中常用的流。
1.在字节流中输出数据主要是使用OutputStream完成,输入流使用的是InputStream。
输出流OutputStream
String a = "d:\\bbb.txt";
File f = new File(a);
FileOutputStream b = new FileOutputStream(f,true);//不加true会覆盖之前的内容,加上是在后面写。
String c = "这是要输出到文本的内容";
byte[] bbb = c.getBytes(); //字符串转类型换为byte[]数组类型
b.write(bbb);
b.close();
输入流InputStream
String a = "d:\\bbb.txt";
File f = new File(a);
FileInputStream b = new FileInputStream(f);
byte[] bbb = new byte[(int)(f.length())];//长度可以直接取文件字节长度
b.read(bbb);
b.close();
String str = new String(bbb);//转换成字符串
System.out.println(str);
2.在字符流中输出主要是使用Writer类完成,输入流主要使用Reader类完成。(这四个都是抽象类)。
输出流Writer
String a = "d://bbb.txt";
File f = new File(a);
FileWriter c = new FileWriter(f,true);//不加true会覆盖之前内容,加上后会在后面写
c.write("这是要输入的内容");//可以直接用字符串,不用转换(写文本类型推荐使用)
c.close();
输入流Reader
String aa ="d:\\bbb.txt";
File bb =new File(aa);
FileReader cc = new FileReader(bb);
char[] dd = new char[100];//长度不好取(不建议用)
cc.read(dd);
cc.close();
String str = new String(dd);//转换为字符串
System.out.println(str)
既然Reader去长度不好用,我们还可以用Scanner(推荐)
String a = "d:\\bbb.txt";
File b = new File(a);
Scanner sc = new Scanner(b); //Scanner每次只能取一行,所以全部取出要用while循环
while(sc.hasNext()){ //当还有下个值的时候循环
System.out.println(sc.nextLine());
}
sc.close();
Scanner这样取出来结果是一样的
三、缓存流(处理流)。
http://www.cnblogs.com/hq233/p/6266928.html
java 中流的使用的更多相关文章
- 《精通并发与Netty》学习笔记(09 - Java中流的概念)
Java中流的概念 java程序通过流来完成输入/输出.流是生产或消费信息的抽象.流通过java的输入/输出与物理设备链接.尽管与它们链接的物理设备不尽相同,所有流的行为具有同样的方式.这样,相同的输 ...
- Java中流的概念
http://wapwenku.baidu.com/view/04714847b307e87101f69656.html?ssid=0&from=1086k&uid=0&pu= ...
- Java中流-----个人总结心得
流 字符流 字节流 缓冲区 数据流---用于传输数据.IO流---Input/Output流.数据从外部流向程序---输入流:数据从程序流向外部的时候--输出流.读取一个文件---数据从文件流向程序- ...
- 第57节:Java中流的操作以及编码解码
我的博客: https://huangguangda.cn/ https://huangguangda.github.io/ 前言: 编码解码:编码时将信息从一种形式变成为另一种形式,成为编码.编码为 ...
- java中流的简单小结
1.分类 按字节流分: InputStream(输出流) OutputStream(输入流) 按字符流分: Reader Writer 提示:输入.输出是站在程序的角度而言,所有输入流是“读 ...
- Java中流的操作练习
文件中的学生信息 学生信息存储在TXT文件中,我们需要对信息进行基本的,增.删.改.查,全部显示操作. 1.学生类/Student package com.yujiao.student; public ...
- java中流的注意事项
缓冲流 缓冲流继承自过滤流,使用缓冲流时一些要注意的知识点: 1.如果在缓冲流对象创建时使用了其他流,最后关闭时只需关闭缓冲流就可以了,其他流会跟着自动关闭. 2.缓冲字符输入流(BufferedRe ...
- Java实现本地 fileCopy
前言: Java中流是重要的内容,基础的文件读写与拷贝知识点是很多面试的考点.故通过本文进行简单测试总结. 2.图展示[文本IO/二进制IO](这是参考自网上的一张总结图,相当经典,方便对比记忆) 3 ...
- Java中的流
一.Java中流的原理 流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行.设备可以是文件,网络,内存等. 四种基本流InputStream,Ou ...
随机推荐
- 移动页面缩放方法之(三)rem布局
<!DOCTYPE HTML> <html lang="zh-cn"> <head> <meta http-equiv="Con ...
- bootstrap新闻模块样式模板
<!-- news beginning --> <div class="container mp30"> <div class="row&q ...
- (转)浅谈dedecms模板引擎工作原理及自定义标签
理解织梦模板引擎有什么意义?一方面可以更好地自定义标签.更多在于了解织梦系统,理解模板引擎是理解织梦工作原理的第一步.理解织梦会使我们写php代码时更顺手,同时能学习一些php代码的组织方式. 这似乎 ...
- openssl提取pfx证书密钥对
刚做银联的项目,对方给了1.pfx和1.cer两个测试文件,总结一下利用这两个文件提取出文本 银联提供两个测试证书 1.pfx 和 1.cer . 其中 pfx证书包含RSA的公钥和密钥;cer证书 ...
- Hive学习之三 《Hive的表的详解和应用案例详解》
一.Hive的表 Hive的表分为内部表.外部表和分区表. 1.内部表,为托管表. 2.外部表,external. 3.分区表. 详解: 内部表,删除表的时候,数据会跟着删除. 外部表,在删除表的时候 ...
- gui线程
package thread; import java.awt.BorderLayout; import java.awt.EventQueue; import java.awt.event.Acti ...
- maven在mac上的入门使用
首先博主也是在入门学习,在学习maven时遇到了不少问题.查资料时发现网上maven的使用大多是win的,所以我打算写点maven在mac入门使用的笔记,希望可以帮助到跟我一样有困难的你们. 1.ht ...
- 一种实现C++反射功能的想法(一)
Java的反射机制很酷, 只需知道类的名字就能够加载调用. 这个功能很实用, 想象一下, 用户只需指定类的名称, 就可以动态绑定类型, 而且只需通过字符串指定, 字符串的使用可以使得用户的修改只需修改 ...
- 安卓之cannot convert from Fragment1 to Fragment
在写一个音乐播放器的时候,用到了fragment,结果在需要返回Fragment的方法里面,无法将Fragment1(Fragment的子类)强制转换成Fragment, 很是纳闷,我是参照一个开源代 ...
- Chrome扩展与用户隐私
转载自https://www.imququ.com/post/chrome-extensions-and-user-privacy.html Google Chrome浏览器应该早就是大家的默认了 ...