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中就是一个问题,在网上找了一些资料,找到了一个很 ...
随机推荐
- _mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h':问题的解决 mysql安装python
在win7下安装了Python后,想安装python-MySQL,使用pip安装出现如下问题: >pip install MySQL-python _mysql.c(42) : fatal er ...
- Android学习笔记——menu
该工程的功能是实现两个数相乘,并在另外一个Activity中显示计算的结果 以下的代码是MainActivity.java中的代码 package com.example.menu; import a ...
- Mac技巧
////////////////////////////////////////////////////////////////////////////////PC键盘在Mac上的映射Ctrl = C ...
- Jquery实现textarea根据文本内容自适应高度
本文给大家分享的是Jquery实现textarea根据文本内容自适应高度,这些在平时的项目中挺实用的,所以抽空封装了一个文本框根据输入内容自适应高度的插件,这里推荐给小伙伴们. autoTextare ...
- flask笔记---url、变量规则
1.路由: route() 装饰器用于把一个函数绑定到一个 URL,可以动态变化 URL 的某些部分,还可以为一个函数指定多个规则,从而方便用户访问与记忆. 例子: @app.route('/') # ...
- Why is applicationhost.config still being added to source control even thought it's in gitignore
Why is applicationhost.config still being added to source control even thought it's in gitignore g ...
- Fiddler源代码分享
frmViewer.cs: namespace Fiddler{ using Microsoft.Win32; using System; using System.Collecti ...
- DNS域传送漏洞利用
DNS区域传送(DNS zone transfer)指的是一台备用服务器使用来自主服务器的数据刷新自己的域(zone)数据库.这为运行中的DNS服务提供了一定的冗余度,其目的是为了防止主的域名服务器因 ...
- C-基本语法与运算
编译: Technorati 标记: C 1, 编译compilers 命令make 将高级语言转换为低级语言. clang: 1,预处理(preprocessing) 2,编译(complition ...
- 降维PCA技术
降维技术使得数据变得更易使用,并且它们往往能够去除数据中的噪声,使得机器学习任务往往更加精确. 降维往往作为预处理步骤,在数据应用到其它算法之前清洗数据.有很多技术可以用于数据降维,在这些技术中,独立 ...