学过java的都知道java中有非常多的读取文件流的操作。这个要回到javase的io操作了。io流说实话,初学者学的肯定会非常混乱,那么多流,什么输入流,输出流,什么文件流,什么字节流,等等。我在这里只能简单的给大家普及一下java的文件操作了。最后再介绍哪种方式读取文件的方法好用。

首先是File对象,File对象只是一个文件对象,比如你要操作哪个文件,就new File("传入文件的路径和名字"),要不然程序怎么能知道你要读的是哪个文件呢,或者要把哪段内容写入到哪个文件呢?,File对象是在文件操作中必须的。

另外就是流了,你想读取文件,那么就是Reader的对象,或者InputStream相关的对象了。

如果想写东西到文件中,那么就是Write对象,或者outputStream对象了。一般这些都是抽象类,new 的话需要new具体的实现,比如FileOutPutStream就是表示输出到哪个文件

在读文件时,如果读取字节的话,从控制台输出的话,你又不知道怎么控制字节多大,这样就会把源文件读乱了,用readLine()方法不但不会读乱了。而且比如在文件末尾一直敲空白的回车也能去了。

接下来,我比如有一个文件,叫struts.xml,在这个类的同一路径下

package com.cidp.fzxy;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader; public class A {
public static void main(String[] args) throws Exception { //获取这个类的路径path
String path = A.class.getResource("").getPath(); //path + "struts.xml",就是类路径下的struts.xml这个文件了
BufferedReader br = new BufferedReader(new FileReader(new File(path + "struts.xml")));
String s = ""; //定义一个变量s,让s等于br去读一行。
while(!(s = br.readLine()).trim().equals("")){
System.out.println(s);
}
}
}

  

运行结果

这样的话,就可以把文件里面的内容,自动去掉结尾不管多少回车没用的信息了

java非常好用的读取文件的流的代码的更多相关文章

  1. Java FileReader使用相对路径读取文件

    Java FileReader使用相对路径读取文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在进行编程时需要时常更换主机进行测试,如果使用绝对路径则需要经常更改,为此使用相对路径是一个 ...

  2. java中如何把图片转换成二进制流的代码

    在学习期间,把开发过程经常用到的一些代码段做个备份,下边代码内容是关于java中如何把图片转换成二进制流的代码,应该能对各朋友也有用处. public byte[] SetImageToByteArr ...

  3. java 正则表达式的应用:读取文件,获取其中的电话号码

    1.正则表达式 正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描 ...

  4. Java开发之I/O读取文件实例详解

    在java开发或者android开发中,读取文件是不可避免的,以下对java开发中读取文件做了归纳和详解: 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 pa ...

  5. (转)Java按指定行数读取文件

    package test import java.io.File; import java.io.FileReader; import java.io.IOException; import java ...

  6. java中使用相对路径读取文件的写法总结 ,以及getResourceAsStream() (转)

    https://blog.csdn.net/my__sun_/article/details/74450241 读取文件的写法,相对路径 在当前的目录结构中读取test.txt的有四种写法 简单粗暴的 ...

  7. 关于java读取文件IO流学习总结(一)

    IO流的分类: 1.根据流的数据对象来分: 高端流:所有的内存中的流都是高端流,比如:InputStreamReader 低端流:所有的外界设备中的流都是低端流,比如InputStream,Outpu ...

  8. 关于java读取文件IO流学习总结(二)

    今天网上随意逛了逛,某处看到关于文件的操作,描述的不错,加深了对于文件操作的理解,在此分享给大家.希望能够有所收获. java读取txt文件内容: 可以作如下理解: 1. 首先获得一个文件句柄.Fil ...

  9. Java学习:通过Scanner读取文件

    Scanner不仅能够读取用户的键盘输入,还可以读取文件输入. 需要在创建Scanner对象的时候传入一个File对象作为参数.代码如下: import java.util.Scanner; impo ...

随机推荐

  1. [转]常用字符与ASCII代码对照表

    常用字符与ASCII代码对照表 为了便于查询,以下列出ASCII码表:第128-255号为扩展字符(不常用) ASCII码 键盘 ASCII 码 键盘 ASCII 码 键盘 ASCII 码 键盘 27 ...

  2. Linux常用命令收藏

    常见操作: 快速清空文件内容的几种方法:#: > filename # > filename # echo "" > filename # echo > f ...

  3. sklearn.svm.SVC 参数说明

    原文地址:sklearn.svm.SVC 参数说明 ============================== 资源: sklearn官网+DOC 库下载GitHub =============== ...

  4. HTML|CSS之前端入门

    知识内容: 1.计算机网络综述 2.web基础 3.HTML与CSS介绍 4.JavaScript与jQuery介绍 一.计算机网络综述 1.什么是计算机网络 计算机网络是指将地理位置不同.具有独立功 ...

  5. Linux 各类设置、配置、使用技巧参考,Linux使用集锦

    ========== 参考格式 (新增记录时,复制粘贴在下)============= [日期]: <标题> 参考链接ref1: 参考链接ref2: 正文: ========== 参考格式 ...

  6. CUDA C Programming Guide 在线教程学习笔记 Part 4

    ▶ 图形互操作性,OpenGL 与 Direct3D 相关.(没学过,等待填坑) ▶ 版本号与计算能力 ● 计算能力(Compute Capability)表征了硬件规格,CUDA版本号表征了驱动接口 ...

  7. sed 小结

    语法格式1: sed option command file 注意区分 option command, option 以-开始 command 以单?引号包围 ———— 这完全是误会, 我测试好多后发 ...

  8. HTML5 Canvas ( 画一个五角星 ) lineJoin miterLimit

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. leetcode977

    public class Solution { public int[] SortedSquares(int[] A) { return A.Select(x => x * x).ToList( ...

  10. BDE 退出历史 迁移至FireDAC

    BDE组件套TQuery\TTable\TStoreProce结束历时使命. ADO组件套也停止更新, 将来是FireDAC组件套的江湖 Migrating BDE Applications to F ...