文档章节

用io读取一个文件.

奥特曼之王
 奥特曼之王
发布于 2017/09/11 13:57
字数 532
阅读 4
收藏 0

InputStream是所有输入流的基类,FileInputStream是它的一个实现类,允许程序读取机器上面的文件

FileInputstream,FileOutputstream分别是由抽象类Inputstream和Outputstream继承来的,他们的源和目的地是以字节流的方式读取文件,键盘,鼠标,或者显示器.。

 而byteArrayInputStream,byteArrayOutputStream的源和目的地是字节数组,即内存。

FileInputstream的构造函数是FileInputstream(String filename)这样的话Fileinputstream流的源就是名字为filename的文件,而byteArrayInputStream的构造函数是byteArrayInputStream(byte []buf),这样的话byteArrayInputStream流的源就是名字为buf的字节数组。


用io读取一个文件.
public void readFileByCharteArray(String filepath) throws IOException {
        BufferedReader br=new BufferedReader(new FileReader(filepath));
        String str=null;
        StringBuffer buf = new StringBuffer();
        
        while((str=br.readLine())!=null){
            buf.append(str);
            buf.append("\r\n");
        }
        System.out.println(buf.toString());
        
        br.close();
    }


用io读一个文件,并显示出来

public static void main(String[] args)throws Exception
{
                String path="d:\\aa.txt";
                File file=new File(path);
                FileInputStream fis=new FileInputStream(file);
    InputStreamReader isr=new InputStreamReader(fis,"utf-8");
    BufferedReader br=new BufferedReader(isr);
    StringBuffer line=new StringBuffer();
    String str=null;
    File file1=new File("d:\\cc.txt");
    FileOutputStream fos=new FileOutputStream(file1);
    OutputStreamWriter osw=new OutputStreamWriter(fos,"utf-8");
    BufferedWriter bw=new BufferedWriter(osw);
    while((str=br.readLine())!=null){
        line.append(str);
        line.append("\n");
    }
                System.out.println(line);
    bw.flush();
    bw.close();
}


//创建一个文件夹

      //    Calendardate=Calendar.getInstance();

       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

       String  name=

    sdf.format(Calendar.getInstance().getTime());//date.gettime();//得到当前时间

       File file=new File("c:/"+name);//创建文件夹

       file.mkdir();//创建此抽象路径名指定的目录。   

       //在文件夹里面创建.txt文本

        BufferedWriter bw=new BufferedWriter(new FileWriter(file+"/test.txt"));

FileWriter    是被修饰者   BufferedWriter    是修饰者  (都是使用字符流写文件)

上面这个加了一个缓冲,缓冲写满后在将数据写入硬盘    这样做极大的提高了性能 

//也可以.你每写一个数据,硬盘就有一个写动作,性能极差

FileWriter ff=new FileWrite(file+”/test.txt”);

        //在文本里面写字.

        bw.write("i try it ok..haha very good");

        bw.write("\n11111");

        bw.write("\n22222");

        bw.close();

    //读取文本文件内容

        BufferedReader bb=new BufferedReader(new FileReader(file+"/test.txt"));

        String str="";

        while((str=bb.readLine())!=null){

            System.out.println(str);

        }

 

     //如何列出某个目录下的所有文件
             File f=new File("C:\\");
             File[] flists=f.listFiles();
             for(int i=0;i<flists.length;i++){
                 if(flists[i].isDirectory()){
                     System.out.println("dirctory is---------------"+flists[i].getName());
                 }else
                     System.out.println("file is=="+flists[i].getName());
                
             }


本文转载自:http://blog.csdn.net/renjanely/article/details/8611747

共有 人打赏支持
奥特曼之王
粉丝 1
博文 81
码字总数 10294
作品 0
郑州
私信 提问
Java基础笔记21

21.01_IO流(字符流FileReader) 1.字符流是什么 字符流是可以直接读写字符的IO流 字符流读取字符, 就要先读取到字节数据, 然后转为字符. 如果要写出字符, 需要把字符转为字节再写出. 2.FileR...

dreamkong
2017/12/11
0
0
reactor模型 preactor模型

通常的,对一个文件描述符指定的文件或设备, 有两种工作方式: 阻塞与非阻塞。所谓阻塞方式的意思是指, 当试图对该文件描述符进行读写时, 如果当时没有东西可读,或者暂时不可写, 程序就进入等...

小熊猫大暴走
2013/01/02
0
3
转载-C语言FILE类型与标准I/O流

<cstdio> (stdio.h) - C++ Reference http://www.cplusplus.com/reference/cstdio/ 标准IO以及文件IO。 标准IO:标准I/O是ANSI C建立的一个标准I/O模型,是一个标准函数包和stdio.h头文...

zray4u
2016/07/15
29
0
Facebook图片存储系统Haystack——存小文件,本质上是将多个小文件合并为一个大文件来降低io次数,meta data里存偏移量

转自:http://yanyiwu.com/work/2015/01/04/Haystack.html 一篇14页的论文Facebook-Haystack, 看完之后我的印象里就四句话: 因为【传统文件系统的弊端】 因为【缓存无法解决长尾问题】 所以...

桃子红了呐
2017/11/16
0
0
【Java并发性和多线程】多线程的优点

本文为转载学习 原文链接:http://tutorials.jenkov.com/java-concurrency/benefits.html 译文链接:http://ifeve.com/benefits/ 尽管面临很多挑战,多线程有一些优点使得它一直被使用。这些...

heroShane
2014/01/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

区块链时代的拜占庭容错:Tendermint (七)

原文题目:《Tendermint: Byzantine Fault Tolerance in the Age of Blockchains》 原文作者:Ethan Buchman 本文为节选 软件实现 Tendermint采用Go语言实现,代码在https://github.com/tend...

万向区块链
8分钟前
2
0
日志分级输出到指定文件

log4j.properties文件 #根设置,输出级别为DEBUG级别, 输出文件为 ERRORA,stdout,DEBUGAlog4j.rootLogger=DEBUG,ERRORA,stdout,DEBUGA#过滤掉spring框架下的额外日志#log4j.category...

嘴角轻扬30
14分钟前
0
0
Hash源码分析(JDK1.7和1.8的对比)

前言 HashMap 在 Java 和 Android 开发中非常常见 而HashMap 1.8 相对于 HashMap 1.7 更新多 今天,我将通过源码分析HashMap 1.8 ,从而讲解HashMap 1.8 相对于 HashMap 1.7 的更新内容,希望...

瑞查德-Jack
14分钟前
1
0
Amino——表现层

一、Amino 整体视觉感受 Amino采用的主题色是神秘的蓝紫色,搭配白色图标和文字,其他图标、按钮、卡片等采用饱和度较高的亮色,整体风格活泼灵动。蓝紫色给人一种神秘感,好比陌生人之间的社...

铸剑为犁413
15分钟前
0
0
日志服务与SIEM(如Splunk)集成方案实战

背景信息 目标 本文主要介绍如何让阿里云日志服务与您的SIEM方案(如Splunk)对接, 以便确保阿里云上的所有法规、审计、与其他相关日志能够导入到您的安全运维中心(SOC)中。 名词解释 LOG(S...

阿里云官方博客
26分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部