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

这里直接上代码,读取文件的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. 使用jdk自带的线程池。加载10个线程。

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

  2. redis与spring整合实例

    1)首先是redis的配置. 使用的是maven工程,引入redis与spring整合的相关jar包 <!-- redis服务 start--> <dependency> &l ...

  3. python通用分页功能

    实现: class Page: def __init__(self,current_page,data_count,per_page_count=10,pager_num=10): self.curr ...

  4. 006_linuxC++之_引用

    1. 什么是“引用”?申明和使用“引用”要注意哪些问题? 答:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同.申明一个引用的时候,切记要对其进行初始化.引用声明 ...

  5. Flutter 踩坑集

    1.Flutter Packages Get 一直重试或一直失败的问题 翻车原因:万恶之源-----天朝的长城防火墙 解决方法 详见:https://flutter.dev/community/chi ...

  6. AtCoder Beginner Contest 132

    目录 Contest Info Solutions A. Fifty-Fifty B. Ordinary Number C. Divide the Problems D. Blue and Red B ...

  7. 在centos7上使用packstack安装openstack

    简介 Packstack主要是由Redhat推出的用于概念验证(PoC)环境快速部署的工具.Packstack是一个命令行工具,它使用Python封装了Puppet模块,通过SSH在服务器上部署Ope ...

  8. js-常见算法操作

    字符串操作 判断回文字符串 1 2 3 4 5 6 7 8 9 10 11 12 13 14 function palindrome(str){  // \W匹配任何非单词字符.等价于“[^A-Za- ...

  9. JAVA基础知识|抽象类与接口类

    一.抽象类 抽象类:拥有抽象方法的类就是抽象类,抽象类要使用abstract声明 抽象方法:没有方法体的方法,必须要使用abstract修饰 为什么要使用抽象类,抽象方法? 举例来说,如果你定义了一个 ...

  10. LC 987. Vertical Order Traversal of a Binary Tree

    Given a binary tree, return the vertical order traversal of its nodes values. For each node at posit ...