java如何读取txt文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何读取txt文件相关的知识,希望对你有一定的参考价值。

java读取txt文件内容。可以作如下理解:

1、首先获得一个文件句柄。File file = new File(); file即为文件句柄。两人之间连通电话网络了。接下来可以开始打电话了。

2、通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了。接下来需要解读成乙方可以理解的东西

3、既然你使用了FileInputStream()。那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据

4、解读完成后要输出呀。那当然要转换成IO可以识别的数据呀。那就需要调用字节码读取的方法BufferedReader()。同时使用bufferedReader()的readline()方法读取txt文件中的每一行数据哈。


package com.campu;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.Reader;

/**
* @author 码农小江
* H20121012.java
* 2012-10-12下午11:40:21
*/
public class H20121012
/**
* 功能:Java读取txt文件的内容
* 步骤:1:先获得文件句柄
* 2:获得文件句柄当做是输入一个字节码流,需要对这个输入流进行读取
* 3:读取到输入流后,需要读取生成字节流
* 4:一行一行的输出。readline()。
* 备注:需要考虑的是异常情况
* @param filePath
*/
public static void readTxtFile(String filePath)
try
String encoding="GBK";
File file=new File(filePath);
if(file.isFile() && file.exists()) //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
while((lineTxt = bufferedReader.readLine()) != null)
System.out.println(lineTxt);

read.close();
else
System.out.println("找不到指定的文件");

catch (Exception e)
System.out.println("读取文件内容出错");
e.printStackTrace();




public static void main(String argv[])
String filePath = "L:\\\\Apache\\\\htdocs\\\\res\\\\20121012.txt";
//      "res/";
readTxtFile(filePath);





参考技术A 按照字符流读:
public List<String> readFile(String name) 
List<String> li = new ArrayList<String>();
String path = "";
try 
path =文件路径
 catch (URISyntaxException e1) 
// TODO Auto-generated catch block
e1.printStackTrace();

File f = new File(path);
BufferedReader r = null;
String line;
try 
r = new BufferedReader(new FileReader(f));
while ((line = r.readLine()) != null) 
if (line.startsWith("--"))
continue;
li.add(line);

r.close();
 catch (Exception e) 
// TODO Auto-generated catch block
e.printStackTrace();


return li;


按照字节流读:

public List<String> readFile() 
List<String> li = new ArrayList<String>();
String path = "";
try 
path =  文件路径
 catch (URISyntaxException e1) 
// TODO Auto-generated catch block
e1.printStackTrace();

File f = new File(path);
InputStream in = null;
try 
in = new FileInputStream(f);
int ab = in.available();
byte b[] = new byte[ab];
while (in.read(b, 0, ab) > -1) 
System.out.println(new String(b));


 catch (Exception e) 
// TODO Auto-generated catch block
e.printStackTrace();


return li;




本回答被提问者采纳
参考技术B

具体可以多看看JAVA IO,写了个简单的例子,你参考一下吧。

public class ReadTxtFile 

public static void main(String[] args) throws Exception 

File file = new File("C:\\\\Users\\\\795829\\\\Desktop\\\\1.txt");
// 字符流读取文件数据
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while ((line = br.readLine()) != null) 
System.out.println(line);

br.close();
System.exit(-1); // TODO 测试用
// 字节流读取文件数据
FileInputStream fis = new FileInputStream(file);
int n = 1024;
byte buffer[] = new byte[n];
while ((fis.read(buffer, 0, n) != -1) && (n > 0)) 
System.out.print(new String(buffer));

fis.close();



如何在Java中读取内容时指定资源中文件的路径

我在资源文件夹中有一个txt文件。结构看起来像:

src -> main -> java

            -> resources -> document.txt

我需要阅读文本文件的内容。为此,我尝试了以下代码段:

InputStream inputStream = ClassName.class.getResourceAsStream("/document.txt");

InputStream inputStream = ClassName.class.getResourceAsStream("document.txt");

InputStream inputStream = Thread.currentThread().getContextClassLoader()
                .getResourceAsStream("document.txt");

在所有实例中,inputStream变为null,从资源指定路径或读取文件内容的正确方法是什么

答案

试试这个

BufferedReader br = new BufferedReader(new InputStreamReader(Classname.class.getClassLoader()。getResourceAsStream(“filename.txt”)));

另一答案

使用此方法:

InputStream inputStream = ClassName.class.getClassLoader().getResourceAsStream("document.txt");

以上是关于java如何读取txt文件的主要内容,如果未能解决你的问题,请参考以下文章

java如何读取一个txt文件的所有内容

java如何读取txt文件

java如何读取大容量的txt文件

Java 如何读取txt文件的内容?

Java - 读取文件夹中的所有 .txt 文件

MFC如何读取TXT文件?