java读txt方法

Python038

java读txt方法,第1张

1).按行读取TXT文件

package zc

import java.io.BufferedReader

import java.io.File

import java.io.FileNotFoundException

import java.io.FileReader

import java.io.IOException

public class readLine {

public static void main(String[] args) {

// TODO Auto-generated method stub

File file = new File("C:/zc.txt")

BufferedReader reader = null

String tempString = null

int line =1

try {

System.out.println("以行为单位读取文件内容,一次读一整行:")

reader = new BufferedReader(new FileReader(file))

while ((tempString = reader.readLine()) != null) {

System.out.println("Line"+ line + ":" +tempString)

line ++

}

reader.close()

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}finally{

if(reader != null){

try {

reader.close()

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

}

}

}

2).按字节读取TXT文件

package zc

import java.io.File

import java.io.FileInputStream

import java.io.FileNotFoundException

import java.io.IOException

import java.io.InputStream

public class readerFileByChars {

public static void main(String[] args) {

// TODO Auto-generated method stub

File file = new File("c:/zc.txt")

InputStream in = null

byte[] tempByte = new byte[1024]

int byteread = 0

try {

System.out.println("以字节为单位读取文件内容,一次读多个字节:")

in = new FileInputStream(file)

while ((byteread = in.read(tempByte)) != -1 ) {

System.out.write(tempByte, 0, byteread)

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}finally{

if (in != null) {

try {

in.close()

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

}

}

}

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)

}

}

首先你要定义一条文件路线。就是实例File这个类,这条路连接了你的磁盘,也就是文件处,和你的代码处,你需要一个外卖员帮你传输数据,就是流,实例流对象!然后就是读取,用read方法读,每次读取的数据,存进字节数组,然后传进String类的构造器,底层会给你把字节数组里的转为字符串,就读取出来了,