import java.io.FileInputStream;

/**
* 使用FileInputStream读取文件
*/
public class FileRead {
/**
* @param args
*/
public static void main(String[] args) {
// 读取文件操作 // 1.通过 fis.read()方法读取,一个字节一个字节读取,对数据进行循环遍历
// ReadFileToint();
// 2.通过fis.read(data,0,length)方法读取。把数据一次全部读到data字节数组里面
ReadFile();
} public static void ReadFileToint() {
// 声明流对象
FileInputStream fis = null;
try {
// 创建流对象
fis = new FileInputStream("d:\\test\\a.txt");
// 读取数据,并将读取到的数据存储到数组中
byte[] data = new byte[1024]; // 数据存储的数组
int i = 0; // 当前下标
// 读取流中的第一个字节数据
int n = fis.read();
// 依次读取后续的数据
while (n != -1) { // 未到达流的末尾
// 将有效数据存储到数组中
data[i] = (byte) n;
// 下标增加
i++;
// 读取下一个字节的数据
n = fis.read();
} // 解析数据
String s = new String(data, 0, i);
// 输出字符串
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭流,释放资源
fis.close();
} catch (Exception e) {
}
}
} public static void ReadFile() {
// 声明流对象
FileInputStream fis = null;
try {
// 创建流对象
fis = new FileInputStream("d:\\test\\a.txt");
// 读取数据,并将读取到的数据存储到数组中
byte[] data = new byte[1024]; // 数据存储的数组
int i = fis.read(data); // 解析数据
String s = new String(data, 0, i);
String[] ssStrings = s.split("\r\n");
for (String b : ssStrings) {
System.out.println(b.replace('|', ' '));
}
// 输出字符串
System.out.println(s); /*
* 其实懂正则表达式的应该已经发现了,是的,“.”是正则表达式的元字符,匹配除换行符以外的任意字符,所以replaceAll、
* replaceFirst才出现了这样的结果。
*
* 而replace没有用到正则表达式,但会把所有“.”替换掉,很多人可能会误解replace是替换单个,而replaceAll是替换全部
* ,其实这是错的(我以前也是这么想的- -)。replace只是没有用到正则表达式,但会替换所有匹配的字符串。
* 到这里一些不懂正则表达式的小伙伴可能就要喊坑爹了
* ,“那我不想用正则表达式去替换第一个字符串肿么办?”其实也很简单,只要将元字符串转义就行了
* 。s.replaceFirst("\\.", "#")
*/ /*
* 这里给个会被正则表达式识别的字符列表: .匹配除换行符以外的任意字符 ^匹配字符串的开始 $匹配字符串的结束* 重复零次或更多次
* +重复一次或更多次 ?重复零次或一次
*/
String ss = "my.test.txt";
String[] myStrings = ss.split("\\.", 2);
for (String b : myStrings) {
System.out.println(b);
}
System.out.println(ss.replace(".", "#"));
System.out.println(ss.replaceAll(".", "#"));
System.out.println(ss.replaceFirst(".", "#"));
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭流,释放资源
fis.close();
} catch (Exception e) {
}
}
}
}

  

java读取文件的基本操作的更多相关文章

  1. [Java]读取文件方法大全(转)

    [Java]读取文件方法大全   1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile {     /**     ...

  2. Java 读取文件的内容

    Java 读取文件的内容 1) CLASS_NAME: 换成自己真实的类名 2) /page/test.json: 换成自己真实的page 3) FileUtils: 来自于org.apache.co ...

  3. Java读取文件-BufferedReader/FileReader/InputStreamReader/FileInputStream的关系和区别

    一.Java读取和存储文件数据流 Java读取文件,实际是将文件中的字节流转换成字符流输出到屏幕的过程   这里面涉及到两个类:InputStreamReader和OutputStreamWriter ...

  4. 使用java读取文件夹中文件的行数

    使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...

  5. Java读取文件的几种方式

    package com.mesopotamia.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...

  6. java 读取文件——按照行取出(使用BufferedReader和一次将数据保存到内存两种实现方式)

    1.实现目标 读取文件,将文件中的数据一行行的取出. 2.代码实现 1).方式1: 通过BufferedReader的readLine()方法. /** * 功能:Java读取txt文件的内容 步骤: ...

  7. Java 读取文件到字符串

    Java的io操作比较复杂 package cn.outofmemory.util; import java.io.BufferedReader; import java.io.FileInputSt ...

  8. java读取文件夹下所有文件并替换文件每一行中指定的字符串

    import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.I ...

  9. Java读取文件方法和给文件追加内容

    本文转载自:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文 ...

随机推荐

  1. C#装箱与拆箱的研究

    在对这个问题展开讨论之前,我们不妨先来问这么几个问题,以系统的了解我们今天要探究的主题. 观者也许曾无数次的使用过诸如System.Console类或.NET类库中那些品种繁多的类.那么,我想问的是它 ...

  2. linux的一些指令

    linux的一些指令 █查看指令參數man 指令,如:man ls ,按q鍵退出 █查看文件列表ls -lht 按時間排序ll 列表ls 列表 目錄cd 目錄名稱 進入路徑cd .. 返回上層路徑 █ ...

  3. 操作系统(5)_内存管理_李善平ppt

    i386先通过段是管理,在通过页是管理

  4. 梁勇Java语言程序设计第三章全部例题 为第五次作业

    完成例题3-1,通过系统当前时间毫秒值获取随机10以内的整数判断加的结果是否正确,不用if语句 package com.swift; import java.util.Scanner; public ...

  5. oc不可变数组创建

    //创建数组 //1.快速创建数组  @[] NSArray *week=@[@"MON",@"TUE",@"WED",@"THU ...

  6. react的redux中间件

    redux 的中间件(对dispatch功能的拦截和增强,一般不用自己写,有插件) dispath是一个方法,可以自行中间拦截更改: store.dispatch = function(action) ...

  7. 牛客小白月赛5 D 阶乘(factorial) 【前缀】

    链接:https://www.nowcoder.com/acm/contest/135/D 题目描述 输入描述: 输入数据共一行,一个正整数n,意义如“问题描述”. 输出描述: 输出一行描述答案: 一 ...

  8. 【PHP】php中json_decode()和json_encode()

    1.json_decode() json_decode (PHP 5 >= 5.2.0, PECL json >= 1.2.0) json_decode — 对 JSON 格式的字符串进行 ...

  9. 学习Pytbon第八天,文件的操作

    文件的常用操作字符 data=open('月亮代表我的心',encoding='utf-8').read() f=open('月亮代表我的心',encoding='utf-8')#提取内存对象也叫文件 ...

  10. [原]sencha touch之布局

    今天记录一下关于sencha touch中的几种布局,其实很简单的,还是直接上代码,一目了然 1:box布局,其实就是vbox和hbox,说白了一个是横着摆放,一个是竖着摆放 Ext.applicat ...