主要分为字节读取和字符读取,字节读取可以一个一个读取和字节数组读取,字符读取同样之,字符读取适合文本读取,字节读取皆可以

这里直接上代码,读取文件的9个小demo


package com.io;

import org.junit.Test;

import java.io.*;

public class FileTest {
//1、字节流字节一个一个读取
@Test
public void test() throws IOException{
InputStream fis = new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt"));
int len;
//按字节一个一个读取
while ((len = fis.read())!=-1){
System.out.print((char)len+"\t");
};
fis.close();
}
//输出结果h    e    l    l    o    w    o    r    l    d    //2、字节流字节数组读取
@Test
public void test1() throws IOException{
InputStream fis = new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt"));
byte[] bytes = new byte[2];
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = fis.read(bytes))!=-1){
System.out.print((new String(bytes))+"\t");
};
fis.close();
}
//输出结果 he    ll    ow    or    ld    //3、缓冲字节流字节一个一个读取
@Test
public void test2() throws IOException{
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt")));
int len ;
while ((len = bis.read())!=-1){
System.out.print((char)len+"\t");
};
bis.close();
}
//输出结果h    e    l    l    o    w    o    r    l    d  
    //4、缓冲字节流字节数组读取
@Test
public void test3() throws IOException{
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt")));
byte[] bytes = new byte[3];
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = bis.read(bytes))!=-1){
System.out.print(new String(bytes)+"\t");
};
bis.close();
}
//输出结果hel    low    orl    drl    //5、字符流一个一个读取
@Test
public void test4() throws IOException{
InputStreamReader isr = new InputStreamReader(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt")));
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = isr.read())!=-1){
System.out.print((char)len+"\t");
};
isr.close();
} //6、字符流字符数组读取
@Test
public void test5() throws IOException{
InputStreamReader isr = new InputStreamReader(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt")));
char[] chars = new char[3];
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = isr.read(chars))!=-1){
System.out.print(new String(chars)+"\t");
};
isr.close();
} //7、缓冲字符流字符一个一个读取
@Test
public void test6() throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt"))));
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = br.read())!=-1){
System.out.print((char)len+"\t");
};
br.close();
} //8、缓冲字符流字符数组读取
@Test
public void test7() throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt"))));
char[] chars = new char[3];
int len ;
//按字节数组读取 bytes存储的是读取的数据
while ((len = br.read(chars))!=-1){
System.out.print(new String(chars)+"\t");
};
br.close();
} //9、缓冲字符流按行读取
@Test
public void test8() throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("E:\\project_test\\src\\com\\io\\readme.txt"))));
//按字节数组读取 bytes存储的是读取的数据
String str;
while ( (str = br.readLine())!=null){
System.out.print(str+"\t");
};
br.close();
}
}
待更。。。。。。。。。。。。。。

java -io 读取文件操作的更多相关文章

  1. Java IO读取文件之二

    package com.lf.iopreoject; import java.io.BufferedReader; import java.io.File; import java.io.FileIn ...

  2. java IO与文件操作

    文件创建与删除 创建目录或文件 createNewFile() 需要文件目录已存在 public class IO { public static void main(String args[]) { ...

  3. java 通过内存映射文件来提高IO读取文件性能

    MappedByteBuffer out = new RandomAccessFile("src/demo20/test.dat", "rw"). getCha ...

  4. java.io中流的操作:字节流、字符流

    java.io中流的操作:字节流.字符流(1)使用File类打开一个文件(2)通过字节流或字符流的子类指定输出的位置(3)进行读/写操作(4)关闭输入/输出 1.字节流:主要是byte类型数据,以by ...

  5. Java中的文件操作(一)RandomAccessFile

    今天,学到的是java中的文件操作. Java.IO.File Java中操作文件用到RandomAccessFile类,既可以读取文件内容,也可以向文件输出数据,但不同与普通输入/输出流的是Rand ...

  6. java IO流文件的读写具体实例(转载)

    引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能 ...

  7. Java IO 流-- 文件拷贝

    IO流操作套路: 1.创建源: 2.选择流: 3.操作: 4.释放资源 上代码: package com.xzlf.io; import java.io.File; import java.io.Fi ...

  8. Java审计之文件操作漏洞

    Java审计之文件操作漏洞篇 0x00 前言 本篇内容打算把Java审计中会遇到的一些文件操作的漏洞,都给叙述一遍.比如一些任意文件上传,文件下载,文件读取,文件删除,这些操作文件的漏洞. 0x01 ...

  9. Java IO :文件

    在java应用程序中,文件是一种常用的数据源或者存储数据的媒介.所以这一小节将会对Java中文件的使用做一个简短的概述.这里只提供一些必要的知识点. 通过Java IO读文件 如果你需要在不同端之间读 ...

随机推荐

  1. zhengrui集训D1-D5笔记

    Day_1 计数 它咕掉了 Day_1 序列数据结构 它咕掉了 Day_2 线性代数 高斯消元\Large{高斯消元}高斯消元 普通版:略 模质数:求逆 模合数:exgcd 逆矩阵\Large{逆矩阵 ...

  2. 使用jdk自带的线程池。加载10个线程。

    在开发中使用线程,经常不经意间就new Thread()一个出来,然后发现,这样做不是很好,特别是很多线程同时处理的时候,会出现CPU被用光导致机器假死,线程运行完成自动销毁后,又复活的情况. 所以在 ...

  3. string::at

    char& at (size_t pos); const char& at (size_t pos) const; #include <string>#include &l ...

  4. yii 查询垃圾分类接口

    public function actionGarbage() { // $param = \Yii::$app->request->post('rubbish', ''); // 接收j ...

  5. jQuery.map(arr|obj,callback)

    jQuery.map(arr|obj,callback) 概述 将一个数组中的元素转换到另一个数组中.广州大理石机械构件 作为参数的转换函数会为每个数组元素调用,而且会给这个转换函数传递一个表示被转换 ...

  6. python pass del eval

    pass python中空代码块是非法的,解决的方法就是在语句块中加上一个pass语句 eval >>> eval("print('hellowrold')")h ...

  7. E.Substring Reverse Gym - 101755E

    Substring Reverse Problem Two strings s and t of the same length are given. Determine whether it is ...

  8. win10 开启全局代理

    1. 打开设置 2. 点击“网络和Internet” 3.设置手动代理 . 设置完成后就可以愉快的玩耍啦

  9. 7.27T2

    不可做题 sol:首先有个很显然的性质就是答案一定是在叶子上最优,然后画画图发现就是从最底层看,如果一条链就看做一个点,向上的第一颗非链的节点,它的儿子数-1就会对答案贡献,所有这样的累加起来就是答案 ...

  10. JavaWeb_(Spring框架)认识Spring中的aop

    1.aop思想介绍(面向切面编程):将纵向重复代码,横向抽取解决,简称:横切 2.Spring中的aop:无需我们自己写动态代理的代码,spring可以将容器中管理对象生成动态代理对象,前提是我们对他 ...