IO字节流与字符流的操作

字节流:
        FileInputStream读取,FileOutputStream输出
字节流使用数组缓冲区复制文件,最后得出所使用的时间
         public class work2 {
         public static void main(String[] args) {
             FileOutputStream out=null;
             FileInputStream in=null;
             Date a=new Date();
             try {
                 out=new FileOutputStream("D:\\test\\d\\eclipse.zip");
                 in=new FileInputStream("D:\\test\\eclipse.zip");
                 byte[] b=new byte[1024*1024];
                 int len=0;
                 while((len=in.read(b))!=-1)
                 {
                     out.write(b,0,len);
                 }
             } catch (IOException e) {
                 e.printStackTrace();
             }finally{
                 try {
                     out.close();
                 } catch (IOException e) {
                     e.printStackTrace();
                 }
                 try {
                     in.close();
                 } catch (IOException e) {
                     e.printStackTrace();
                 }
         }
         Date b=new Date();
         System.out.println(b.getTime()-a.getTime());
     }
 }
字符流:
        FileReader 字节流读取  FileWriter 字节流输出
字节流使用数组缓冲区复制文件
         public class copy {
         public static void main(String[] args) throws IOException {
             FileReader fr=new FileReader("D:\\test\\a.txt");
             FileWriter fw=new FileWriter("D:\\test\\d\\a.txt");
             char[] ch=new char[2];
             int len=0;
             while((len=fr.read(ch))!=-1)
             {
                 fw.write(ch,0,len);
                 System.out.println((char)len);
                 fw.flush();
             }
             fw.close();
             fr.close();
         }
     }
转换流:
  借助字节流写入方法,将字节流转换成字符流并且规定编码格式,例如编码格式为utf-8
        FileOutputStream fo=new FileOutputStream("D:\\test\\d\\utf.txt");
OutputStreamWriter osw=new OutputStreamWriter(fo, "utf-8");
FileInputStream fi=new FileInputStream("D:\\test\\utf.txt");
InputStreamReader isr=new InputStreamReader(fi,"utf-8");
缓冲区:
        //字符流缓冲区
        FileReader fr=new FileReader("D:\\test\\aaa.txt");
        BufferedReader br=new BufferedReader(fr);
        //明确目的地
        FileWriter fw=new FileWriter("D:\\test\\d\\aaa.txt");
        BufferedWriter bw=new BufferedWriter(fw);
//字节流缓冲区
        FileInputStream fi=new FileInputStream("D:\\codetool\\eclipse.zip");
        BufferedInputStream bi=new BufferedInputStream(fi);
        FileOutputStream fo=new FileOutputStream("D:\\test\\eclipse.zip");
        BufferedOutputStream bo=new BufferedOutputStream(fo);
  跨平台换行:.newLine();
  读取一整行:readline();
Properties类
用于操作配置文件,后缀名只能是properties的文件
方法:
    load(input字符流或字节流对象);
    store(output字符流或字节流对象,描述信息);
        
写入:
    创建对象:Properties prop = new Properties();
    写入prop集合:prop.setProperty("周迅", "张学友");
    创建字符流文件写入:FileWriter out = new FileWriter("prop.properties");
    写入:prop.store(out,"描述");
取出:
    创建集合:Properties prop = new Properties();
        创建流对象:
        FileInputStream in = new FileInputStream("prop.properties");
              //FileReader in = new FileReader("prop.properties");
        把流所对应文件中的数据 读取到集合中:
        prop.load(in);
        4,关闭流:
        in.close();
        5,显示集合中的数据:
        System.out.println(prop);
IO字节流与字符流的操作的更多相关文章
- IO流回顾与总结第一篇之字节流与字符流的操作。。。。。
		
一.引言 趁着年后的这点时间,抓紧点时间回顾下javase中的IO流,以往都是用到那些常用的IO类,这次来个全点的,有不对的地方还请大神指正一下,做到坚持写博的习惯来...... 回归正题,IO流顾名 ...
 - JAVA IO 字节流与字符流
		
文章出自:听云博客 题主将以三个章节的篇幅来讲解JAVA IO的内容 . 第一节JAVA IO包的框架体系和源码分析,第二节,序列化反序列化和IO的设计模块,第三节异步IO. 本文是第一节. ...
 - 14、IO (字节流、字符流)
		
输入和输出 * A:输入和输出 * a: 参照物 * 到底是输入还是输出,都是以Java程序为参照 * b: Output * 把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 ...
 - 字节流与字符流简单操作(OutputStream、InputStream、Writer、Reader)
		
操作流程 使用File类打开一个文件 通过字节流或者字符流的子类.指定输出的位置. 进行读/写操作 关闭输入/出 字节流与字符流 在java.io包中操作文件内容主要有两大类:字节流字符流.两大类分为 ...
 - Java IO 字节流与字符流 (三)
		
概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 ...
 - Java IO 字节流与字符流 (二)
		
1. 什么是流 Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列.和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序 ...
 - Java提高篇(二):IO字节流、字符流和处理流
		
在我们的Java语言当中,通常会有对文件进行读写,因此我们引入java的IO类来进行文件的读写. 一.字节流 下面是一个字节流的实例: import java.io.*; public class I ...
 - Java IO 字节流与字符流 (五)
		
Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字 ...
 - java 字节流与字符流的区别
		
字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作 ...
 
随机推荐
- Netty(五):ServerBootstrap启动流程
			
这篇文章主要是对ServerBootstrap启动流程做一个梳理,方便我们串联起各个类,同时也对主要的一些类有个大概的印象,方便之后逐个类的深入学习. 本篇文章不在具体贴出代码,而是对整个启动流程画了 ...
 - Knapsack Problem
			
0-1背包 描述:N件物品,第i件的重量是w[i],价值v[i].有一个容量为W的背包,求将哪些物品放入背包可使总价值最大.每件物品可以用0或1次. 分析:根据题意,可以写出表达式: \[max(\S ...
 - C++--浅谈开发系统的经验
			
最近写了不少类了,从垃圾代码爬坑,虽然还是很垃圾,但是照葫芦画瓢,有几分神韵.在这里总结一下,写类的经验教训. 第一步 分析: 当拿到一个要求时,要先去考虑怎样一个类到底该实现什么样的功能,有什么样的 ...
 - 图论--传递闭包(Floyd模板)
			
#include<iostream> #include<cstring> #include<cmath> using namespace std; int dp[1 ...
 - undef用法
			
#undef的语法 定义:#undef 标识符,用来将前面定义的宏标识符取消定义. 整理了如下几种#undef的常见用法. 1. 防止宏定义冲突在一个程序块中用完宏定义后,为防止后面标识符冲突需要取消 ...
 - thinkphp 5.x~3.x 文件包含漏洞分析
			
漏洞描述: ThinkPHP在加载模版解析变量时存在变量覆盖的问题,且没有对 $cacheFile 进行相应的消毒处理,导致模板文件的路径可以被覆盖,从而导致任意文件包含漏洞的发生. 主要还是变量覆盖 ...
 - B - Housewife Wind POJ - 2763  树剖+边权转化成点权
			
B - Housewife Wind POJ - 2763 因为树剖+线段树只能解决点权问题,所以这种题目给了边权的一般要转化成点权. 知道这个以后这个题目就很简单了. 怎么转化呢,就把这个边权转化为 ...
 - springmvc与struts2执行流程比较
			
之前写过一篇struts2的执行流程的文章了,这里对struts2的流程就不做过多的分析,这篇文章主要分析spring-mvc的执行流程以 及struts2与spring-mvc的差别. 1.stru ...
 - LeetCode--Unique Email Addresses  & Hamming Distance (Easy)
			
929. Unique Email Addresses (Easy)# Every email consists of a local name and a domain name, separate ...
 - 【漫画】JAVA并发编程 如何解决原子性问题
			
原创声明:本文转载自公众号[胖滚猪学编程],转载务必注明出处! 在并发编程BUG源头文章中,我们初识了并发编程的三个bug源头:可见性.原子性.有序性.在如何解决可见性和原子性文章中我们大致了解了可见 ...