java读取文件的基本操作
- 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读取文件的基本操作的更多相关文章
- [Java]读取文件方法大全(转)
[Java]读取文件方法大全 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile { /** ...
- Java 读取文件的内容
Java 读取文件的内容 1) CLASS_NAME: 换成自己真实的类名 2) /page/test.json: 换成自己真实的page 3) FileUtils: 来自于org.apache.co ...
- Java读取文件-BufferedReader/FileReader/InputStreamReader/FileInputStream的关系和区别
一.Java读取和存储文件数据流 Java读取文件,实际是将文件中的字节流转换成字符流输出到屏幕的过程 这里面涉及到两个类:InputStreamReader和OutputStreamWriter ...
- 使用java读取文件夹中文件的行数
使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...
- Java读取文件的几种方式
package com.mesopotamia.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...
- java 读取文件——按照行取出(使用BufferedReader和一次将数据保存到内存两种实现方式)
1.实现目标 读取文件,将文件中的数据一行行的取出. 2.代码实现 1).方式1: 通过BufferedReader的readLine()方法. /** * 功能:Java读取txt文件的内容 步骤: ...
- Java 读取文件到字符串
Java的io操作比较复杂 package cn.outofmemory.util; import java.io.BufferedReader; import java.io.FileInputSt ...
- java读取文件夹下所有文件并替换文件每一行中指定的字符串
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.I ...
- Java读取文件方法和给文件追加内容
本文转载自:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文 ...
随机推荐
- Java基础面试题:String 和StringBuffer的区别
package com.swift; import java.util.Date; public class Getclass_Test extends Date { public static vo ...
- Sum All Primes-freecodecamp算法题目
Sum All Primes 1.要求 求小于等于给定数值的质数之和. 只有 1 和它本身两个约数的数叫质数.例如,2 是质数,因为它只能被 1 和 2 整除.1 不是质数,因为它只能被自身整除. 2 ...
- 牛客小白月赛5 D 阶乘(factorial) 【前缀】
链接:https://www.nowcoder.com/acm/contest/135/D 题目描述 输入描述: 输入数据共一行,一个正整数n,意义如“问题描述”. 输出描述: 输出一行描述答案: 一 ...
- 认识mysql(4)
今日是MySQL的第四篇,难度会稍微加大,加油! 开始吧! 1.外键(foreign key) 1.定义:让当前表字段的值在另一个表的范围内选择 2.语法: foreign key(参考字段名) r ...
- 关于mybatis callSettersOnNulls 配置
今天做了一件坑了自己的事情,为此浪费了好多时间... 在mybatis的设置中,看到了这样的一行设置.出于程序员的好奇,去搜索了一下,这条设置是干什么的. <setting name=" ...
- linux普通文件权限和系统目录权限的实践及结论
测试结论:linux普通文件的读.写.执行权限说明 1.可读r:表示具有读取\阅读文件内容的权限 2.可写w:表示具有新增.修改文件内容的权限 1)如果没有r配合,那么vi编辑文件会提示无法编辑(但可 ...
- WebSocket 详解
WebSocket 出现前 构建网络应用的过程中,我们经常需要与服务器进行持续的通讯以保持双方信息的同步.通常这种持久通讯在不刷新页面的情况下进行,消耗一定的内存资源常驻后台,并且对于用户不可见.在 ...
- python各种操作列表的方法及案例
一.循环的使用方法 names = ["张真","刘德华","哈林","谢霆锋","张柏芝"] fo ...
- debug模式开启会做哪些事(源码分析)
以往开发中不管是django框架下开发还是其它框架下开发, 只知道在开发阶段要开启debug模式, 却一直没有深究它会我们做哪些事, 今天使用tornado时偶然看到源码中写的很清楚,故写下来加深印象 ...
- python-01 spider原理
用Python可以做什么?可以做日常任务,比如自动备份你的MP3:可以做网站,很多著名的网站包括YouTube就是Python写的:可以做网络游戏的后台,很多在线游戏的后台都是Python开发的.总之 ...