第一种分法:.输入流2.输出流
第二种分法:.字节流2.字符流
第三种分法:.节点流2.处理流
////////////////////////////////////////////////////////////////////////////字节流: InputStream 的子类是 FileInputStream;
InputStream :int read(byte[]b,int off,int len)从第几位读,读几个,返回读取的个数
OutputStream 的子类是FileOutputStream
OutputStream :void write(byte[]b,int off,int len)
public static void main(String args[]){
FileInputStream in = null;
FileOutputStream out = null;
try {
in = new FileInputStream("e:/from.txt");//输入流(从文件读数据,即数据输入到程序里)
out = new FileOutputStream("e:/to.txt");//输出流(写入文件数据,即数据输出到文件里)
byte[] buffer =new byte[];//字节数组,用来存放读取的数据
int num = in.read(buffer, , buffer.length);//从第0位读取,读from.txt文件的 buffer.length个,放进buffer内
out.write(buffer, , num);//read方法返回读取的个数
//out.write(buffer, 0, 2);//从0位开始,把buffer数组的2个字节写进to.txt文件里
for(int i = ;i<buffer.length;i++){
System.out.print(buffer[i]);
}
String s = new String(buffer);//转换成原来的字符
s= s.trim();//trim方法:去掉首尾空格和空字符,中间的空格不去掉
System.out.print(s);
} 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();
}
}
} 读取大文件:
public static void main(String args[]) {
FileInputStream in = null;
FileOutputStream out = null;
int a = ;
try {
in = new FileInputStream("e:/from.txt");//输入流(从文件读数据,即数据输入到程序里)
out = new FileOutputStream("e:/to.txt");//输出流(写入文件数据,即数据输出到文件里)
byte[] buffer =new byte[];//字节数组,用来存放读取的数据
while(true){ a++;
System.out.print(a);
int num = in.read(buffer, , buffer.length);//从第0位读取,读from.txt文件的 buffer.length个,放进buffer内
out.write(buffer, , num);//read方法返回读取的个数
if(num == -){//返回-1,说明读取完毕
break;
}
} } 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();
}
} ////////////////////////////////////////字符流:读写文件时,以字符为基础
字节输入流:Reader 的子类是FileReader
int read(char [] c,int off,int len)
字节输出流:Writer 的子类是FileWriter
void write(char [] c,int off,int len) public static void main(String args[]) { FileReader reader =null;
FileWriter writer = null;
try{
reader = new FileReader("E:/from.txt");
writer = new FileWriter("e:/to.txt"); char [] buffer = new char[];
int num = reader.read(buffer, , buffer.length);
writer.write(buffer, , num);
for(int i = ;i<num;i++){
System.out.print(buffer[i]);
}
}
catch(Exception e){
System.out.print(e);
}
finally{
try{
reader.close();
writer.close();
}
catch(Exception e){
System.out.print("success!!!");
}
}
}
/////////////////////////////////////////////////一次性读取一行数据
public static void main(String args[]) { FileReader fileReader = null;
BufferedReader bufferedReader = null;
try{
fileReader = new FileReader("e:/from.txt");
bufferedReader = new BufferedReader(fileReader);
String line = null;
while(true){
line = bufferedReader.readLine();
if(line == null){
break;
}
System.out.println(line);
}
}
catch(Exception e){
System.out.println(e); }
finally{
try{
bufferedReader.close();
fileReader.close();
}
catch(Exception e){
System.out.println(e);
} }

IO流基本操作的更多相关文章

  1. 分享知识-快乐自己:IO流基本操作

    点我参考常用API: IO图解: 相关理论: 流的概念和作用: 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将 ...

  2. 黑马程序员_<<IO流基本操作(Writer,Reader)>>

    --------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1.概述 硬盘之间的文件的传输,硬盘中文件的 ...

  3. Java之IO流概述和File基本操作

    IO流图解 IO(in / out)流的分类 流向: 输入流  读取数据 输出流  写出数据 数据类型: 字节流 一个字节占8位, 以一个字节为单位读数据 八大数据类型所占字节数: byte(1), ...

  4. 黑马程序员——【Java基础】——Java IO流

    ---------- android培训.java培训.期待与您交流! ---------- 一.IO概述 1.IO:是Input.Output的缩写. 2.特点: (1)用于处理设备间的数据传输. ...

  5. java中的IO流

    Java中的IO流 在之前的时候我已经接触过C#中的IO流,也就是说集中数据固化的方式之一,那么我们今天来说一下java中的IO流. 首先,我们学习IO流就是要对文件或目录进行一系列的操作,那么怎样操 ...

  6. Java基础---IO(一)---IO流概述、字符流、字节流、流操作规律

    第一讲     IO概述 概述 1.IO流:即InputOutput的缩写. 2.特点: 1)IO流用来处理设备间的数据传输. 2)Java对数据的操作是通过流的方式. 3)Java用于操作流的对象都 ...

  7. java基础知识——网络编程、IO流

    IO流 字节流:处理字节数据的流对象,计算机中最小数据单元就是字节.InputStream OutputStream 字符流:字符编码问题,将字节流和编码表封装成对象就是字符流.Reader Writ ...

  8. Java中的IO流(四)

    上一篇<Java中的IO流(三)>把IO流中的文件及目录操作的对象File类记录了一下,本篇把本不属性IO流但又和IO流有关系的一个对象作一下记录,此对象本属于集合框架里的一个子集,即Pr ...

  9. Java io流详解二

    原文地址https://www.cnblogs.com/xll1025/p/6418766.html 一.IO流概述 概述: IO流简单来说就是Input和Output流,IO流主要是用来处理设备之间 ...

随机推荐

  1. 从零开始学Python第一周:Python基础(上)

    Python语法基础(上) 一,Python的变量 (1)创建变量 变量的含义:存储信息的地方 创建变量并赋值 x = 1 print x x = 123 #再次赋值 print x (2)使用变量 ...

  2. Idea创建Maven项目

  3. ASP.NET MVC搭建项目后台UI框架—7、统计报表

    ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...

  4. gif jpg bmp png的区别

    PNG格式图片因其高保真性.透明性及文件大小较小等特性,被广泛应用于网页设计.平面设计中.网络通讯中因受带宽制约,在保证图片清晰.逼真的前提下,网页中不可能大范围的使用文件较大的bmp.jpg格式文件 ...

  5. JavaScript事件对象与事件处理程序

    在学习之前建议请看一下事件流.事件冒泡.事件捕获 一.事件对象 事件对象:在DOM触发事件时,会产生一个事件对象event,这个事件对象包含着所有与事件相关的信息.既然event是事件对象,那么它必然 ...

  6. Thinkcmf 二次开发

    一.   创建模板 demo 1 Tpl下创建demo文件-----后台启用新的模板 (网站信息--模板方案) 2 在模板在tpl/demo目录下创建Portal目录,然后在Portal目录下创建in ...

  7. Javascript中构造函数与new命令

    典型的面向对象编程语言(比如C++和Java),存在“类”(class)这个概念.所谓“类”就是对象的模板,对象就是“类”的实例.但是,在JavaScript语言的对象体系,不是基于“类”的,而是基于 ...

  8. SharePoint 2013 搜索功能,列表项目不能完全被索引

    描述 最近一个站点,需要开启搜索功能,然后创建内容源,开始爬网,发现列表里只有一部分被索引,很多项目没有被索引,甚是奇怪,如下图(其实列表里有80几条项目). 首先爬网账号是系统账号.服务器管理员,所 ...

  9. LINUX下C-C++类软件的诊断

    一般C/C++写程序由于内存.指针等问题在后期的过程都一般会遇到内存等资源泄露.崩溃等问题,对于这些问题,一般从哪个角度解决呢? 下面从几个角度进行总结: 内存泄露 首先需要注意一个问题是top或者h ...

  10. AFNetworking的理解

    AFNetworking的理解 使用方法 1. 新建的工程中导入AFNetworking3.0中的(AFNetworking 和UIKit+AFNetworking两个文件夹) 2. 在用到AFNet ...