java读取文件
1 java8读取文本文件
2
3
4 public static void java8ReadFileLines(String fileName) throws IOException {
5 List lineList = Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8);
6
7 for(String line:lineList){
8 System.out.println(line);
9 }
10 }
11
12
13
14 一行一行地读取文件
15
16
17 public static void readFileByLines(String fileName) {
18 File file = new File(fileName);
19 BufferedReader reader = null;
20 try {
21 reader = new BufferedReader(new FileReader(file));
22 String line = null;
23 while((line=reader.readLine())!=null ) {
24 System.out.println(line);
25 }
26 }catch (IOException e) {
27
28 }finally {
29 if(reader!=null) {
30 try{
31 reader.close();
32 }catch (IOException e) {
33 ;
34 }
35 }
36 }
37 }
38
39
40
41 一次读取多个字符
42
43
44 public static void readFileByMultiChars(String fileName) {
45 File file = new File(fileName);
46 try{
47 InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(file));
48
49 char[] tempChars = new char[30];
50
51 int readCount = 0;
52 while((readCount=inputStreamReader.read(tempChars))!=-1) {
53 if(readCount==tempChars.length) {
54 System.out.println(tempChars);
55 }else{
56 System.out.println(Arrays.copyOf(tempChars, readCount));
57 }
58 }
59
60
61 inputStreamReader.close();
62 }catch(Exception e) {
63 e.printStackTrace();
64 }
65 }
66
67
68
69 一个字符一个字符地读取
70
71
72 public static void readFileByChars(String fileName) {
73 File file = new File(fileName);
74 try{
75 InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(file));
76
77 int tempChar;
78
79 while((tempChar=inputStreamReader.read())!=-1) {
80 System.out.println((char)tempChar);
81 }
82
83
84 inputStreamReader.close();
85 }catch(Exception e) {
86 e.printStackTrace();
87 }
88 }
89
90
91
92 java8读取字节 超级简单
93
94
95 public static byte[] java8ReadBytes(String fileName) throws IOException {
96 return Files.readAllBytes(Paths.get(fileName));
97 }
98
99
一个字节一个字节地读取
public static void readFileByOneByte(String fileName) {
File file = new File(fileName);
InputStream inputStream = null;
try{
inputStream = new FileInputStream(file);
int tempByte;
while( (tempByte=inputStream.read())!=-1) {
System.out.println(tempByte);
}
inputStream.close();
}catch (IOException e) {
System.out.println(e);
}
}
一个字节一个字节读取到ByteBuffer
public static byte[] readFileByOneByteToBuffer(String fileName) {
ByteBuffer byteBuffer = ByteBuffer.allocate(1024 * 1024);
File file = new File(fileName);
InputStream inputStream = null;
try{
inputStream = new FileInputStream(file);
int tempByte;
while( (tempByte=inputStream.read())!=-1) {
byteBuffer.put((byte)tempByte);
}
inputStream.close();
}catch (IOException e) {
System.out.println(e);
}
byteBuffer.flip();
System.out.println("one limit:" + byteBuffer.limit());
byte[] result = new byte[byteBuffer.limit()];
byteBuffer.get(result);
return result;
}
多个字节进行读取
public static void readFileByMultiBytes(String fileName) {
File file = new File(fileName);
InputStream inputStream = null;
try {
byte[] bytes = new byte[50];
int byteRead = 0;
inputStream = new FileInputStream(fileName);
while( (byteRead = inputStream.read(bytes))!=-1 ) {
System.out.println(byteRead);
}
}catch(IOException e) {
System.out.println(e);
}finally {
if(inputStream!=null) {
try{
inputStream.close();
}catch(IOException e){
System.out.println("iput stream close exception" + e);
}
}
}
}
读取多个字节到ByteBuffer
public static byte[] readFileByMultiBytesToBuffer(String fileName) {
ByteBuffer byteBuffer = ByteBuffer.allocate(1024*1024);
InputStream inputStream = null;
try {
byte[] bytes = new byte[50];
int byteRead = 0;
inputStream = new FileInputStream(fileName);
int count = 0;
while( (byteRead = inputStream.read(bytes))!=-1 ) {
byteBuffer.put(bytes, 0, byteRead);
count+=byteRead;
}
System.out.println("readCount:"+count);
}catch(IOException e) {
System.out.println(e);
}finally {
if(inputStream!=null) {
try{
inputStream.close();
}catch(IOException e){
System.out.println("iput stream close exception" + e);
}
}
}
byteBuffer.flip();
System.out.println("multi limit:" + byteBuffer.limit());
byte[] result = new byte[byteBuffer.limit()];
byteBuffer.get(result);
return result;
}
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读取文件方法总结
由于最近在做一个关于从手机本地读取格式化的txt文件中的内容,并且把内容放在listview中显示.这样问题来了,就是如何能够遍历已经获取到特定的map中就是一个问题,在网上找了一些资料,找到了一个很 ...
随机推荐
- ubuntu sublime text3 lisence
help --> enter lisence ----- BEGIN LICENSE ----- Andrew Weber Single User License EA7E-855605 813 ...
- JStorm集群的安装和使用
0 JStorm概述 JStorm是一个分布式的实时计算引擎.从应用的角度,JStorm应用是一种遵守某种编程规范的分布式应用:从系统角度, JStorm是一套类似MapReduce的调度系统: 从数 ...
- 《CSS3实战》读书笔记 第三章:选择器:样式实现的标记
第三章:选择器:样式实现的标记 选择器的魔力在于,让你完全实现对网页样式的掌控.不同的选择器可以用在不同的情况下使用.总之把握的原则是:规范的编码,根据合理地使用选择器,比去背选择器的定义有价值的多. ...
- 兼容IE的写法收集||bug修复
这篇文章实时更新 属于IE的专属写法 其中,S表示Standards Mode即标准模式,Q表示Quirks Mode,即兼容模式 hack 示例 IE6(S) IE6(Q) IE7(S) IE7(Q ...
- sqlserver检测死锁;杀死锁和进程;查看锁信息
http://blog.sina.com.cn/s/blog_9dcdd2020101nf4v.html sqlserver检测死锁;杀死锁和进程;查看锁信息 ( ::)转载▼ 标签: sql 检测死 ...
- Python之路【第七篇续】:I/O多路复用
回顾原生Socket 一.Socket起源: socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用[打开][读写][关闭]模式来操作. socket就是该模式的 ...
- Python之路【第七篇】:初识Socket
What is Socket 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进程通信机制, ...
- axure新手入门教程
首先做个声明:此次教程里为了快速完成,借用了一些网上已有教程的图文,不是剽窃,只图方便.另外,因为汉化版本可能功能名称等略有差别,请自行理解. 名词解释: 线框图:一般就是指产品原型,比如:把线框图尽 ...
- 二、oracle pctfree和pctused详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- Java中的LookAndFeel
Java'中的几种Look and Feel1.Metal风格 (默认)String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFe ...