Java IO总结之缓冲读入文件

package com.io;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.LinkedList;

/**
 * 缓冲读入文件
 * @author Administrator
 *
 */
public class BufferedInputFile {

    public static String read(String filename) throws IOException{
            //reading input by lines:
        BufferedReader in = new BufferedReader(new FileReader(filename));
        String s;
        StringBuilder sb= new StringBuilder();

        while((s=in.readLine())!=null){
            sb.append(s+"\n");
        }
        in.close();
        return sb.toString();
    }

    //test1,打开一个文本文件,每次读取一行内容,将每行作为一个string读入,并将该string对象存入linklist中,逆序打印linklist
    public static void printLinkList(String fileName) throws IOException{
        BufferedReader in = new BufferedReader(new FileReader("C:/Users/Administrator/Desktop/exec.txt"));
        String string;
        LinkedList<String> list = new LinkedList<String>();
        while((string=in.readLine())!=null){
            list.add(string);
        }
        /*for(int i=list.size();i>=0;i--){
            System.out.println(list.get(i));
        }*/
        java.util.ListIterator<String> item = list.listIterator(list.size());

        while(item.hasPrevious()){
            System.out.println(item.previous());
        }

        while(item.hasNext()){
            System.out.println(item.next());
        }

        /**
         * 结果:
         *  4-->4-->4:4:4:ghdgml11
            3-->3-->3:3:3:flypiger
            2-->2-->2:2:2:ghdgml11
            1-->1-->1:1:1:flypiger
         */

    }

    public static void main(String[] args) throws IOException {
        //System.out.println(read("C:/Users/Administrator/Desktop/exec.txt"));
        printLinkList("C:/Users/Administrator/Desktop/exec.txt");
    }
}

不要问为什么,代码诠释一切

时间: 2024-10-11 03:37:46

Java IO总结之缓冲读入文件的相关文章

Java IO之处理流(缓冲流、转换流)

一.处理流: 增强功能,提供性能,在节点流之上. 二.节点流与处理流的关系 节点流(字节流.字符流)处于IO操作的第一线,所有操作必须通过它们进行: 处理流可以对其他流进行处理(提高效率或操作灵活性). 三.缓冲流 1.字节缓冲流 BufferedInputStream BufferedOutputStream package IOBuffer; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; im

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

一.IO概述 1.IO:是Input.Output的缩写. 2.特点: (1)用于处理设备间的数据传输. (2)Java对数据的处理是通过“流”完成的. (3)Java用于操作流的对象都在IO包中. (4)流按操作分为两种:字节流和字符流. (5)流按流向分为:输入流和输出流(输入输出是相对于“内存”而言的). 3.IO流常用基类 (1)字节流abstract基类:InputStream.OutputStream: (2)字符流抽象基类:Reader.Writer: 二.字符流(Reader.W

java IO流之三 使用缓冲流来读写文件

原文:http://blog.csdn.net/haluoluo211/article/details/52183219 一.通过BufferedReader和BufferedWriter来读写文件 使用缓冲流的好处是,能够更高效的读写信息,原理是将数据先缓冲起来,然后一起写入或者读取出来.经常使用的是readLine()方法,表示一次读取一行数据. package org.example.io; import java.io.BufferedReader; import java.io.Buf

Java IO 过滤流 字节缓冲流 BufferedInput/OutputStream

Java IO 过滤流 字节缓冲流 BufferedInput/OutputStream @author ixenos 概念 BufferedInput/OutputStream是实现缓存的过滤流,他们分别是FilterInput/OutputStream的子类. BufferedInputStream工作流程 stream-->buf--read buf-->I 1.当一个BufferedInputStream被创建时,一个内部的缓冲区 byte[] buf = new byte[size]

Java IO流之字符缓冲流

字符流: 1.加入字符缓存流,增强读取功能(readLine) 2.更高效的读取数据 BufferedReader 从字符输入流读取文本,缓冲各个字符,从而实现字符.数组和行的高效读取. FileReader:内部使用InputStreamReader,解码过程,byte->char,默认缓存大小为8k BufferReader:默认缓存大小为8k,但可以手动指定缓存大小,把数据读取到缓存中,减少每次转换过程,效率更高 //字符输入缓冲流 private static void charRead

Java IO流详解(五)——缓冲流

缓冲流也叫高效流,是处理流的一种,即是作用在流上的流.其目的就是加快读取和写入数据的速度. 缓冲流本身并没有IO功能,只是在别的流上加上缓冲效果从而提高了效率.当对文件或其他目标频繁读写或操作效率低,效能差时.这时使用缓冲流能够更高效的读写信息.因为缓冲流先将数据缓存起来,然后一起写入或读取出来.所以说,缓冲流还是很重要的,在IO操作时加上缓冲流提升性能. Java IO流中对应的缓冲流有以下四个: 字节缓冲流:BufferedInputStream.BufferedOutputStream 字

【java】缓冲字符字节输入输出流:java.io.BufferedReader、java.io.BufferedWriter、java.io.BufferedInputStream、java.io.BufferedOutputStream

BufferedReader最重要,因为有个方法public String readLine() 1 package System输入输出; 2 3 import java.io.BufferedReader; 4 import java.io.IOException; 5 import java.io.InputStreamReader; 6 7 public class Test { 8 public static void main(String[] args) throws IOExce

Java IO详解

学习Java的同学注意了!!! 学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:618528494  我们一起学Java! 初学Java,一直搞不懂Java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见. 首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是Java io 比较基本的一些处理流

Java IO流详解

初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见. 首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是java io 比较基本的一些处理流,除此之外我们还会提到一些比较深入的基于io的处理类,比如console类,SteamTokenzier,Externalizable接口,Serializa