java文件内容读取|java中如何从文件中读取数据

java文件内容读取|java中如何从文件中读取数据的第1张示图

① java中怎样将文件的内容读取成字符串

java中有四种将文件的内容读取成字符串

方式一:

Java code

/**

*以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。

*当然也是可以读字符串的。

*/

/*貌似是说网络环境中比较复杂,每次传过来的字符是定长的,用这种方式?*/

publicStringreadString1()

{

try

{

//FileInputStream用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用FileReader。

FileInputStreaminStream=this.openFileInput(FILE_NAME);

ByteArrayOutputStreambos=newByteArrayOutputStream();

byte[]buffer=newbyte[1024];

intlength=-1;

while((length=inStream.read(buffer)!=-1)

{

bos.write(buffer,0,length);

//.write方法SDK的解释是m.

//当流关闭以后内容依然存在

}

bos.close();

inStream.close();

returnbos.toString();

//为什么不一次性把buffer得大小取出来呢?为什么还要写入到bos中呢?returnnew(buffer,"UTF-8")不更好么?

//returnnewString(bos.toByteArray(),"UTF-8");

}

}

方式二:

Java code

方式四:

Java code

/*InputStreamReader+BufferedReader读取字符串,InputStreamReader类是从字节流到字符流的桥梁*/

/*按行读对于要处理的格式化数据是一种读取的好方式*/

()

{

intlen=0;

StringBufferstr=newStringBuffer("");

Filefile=newFile(FILE_IN);

try{

FileInputStreamis=newFileInputStream(file);

InputStreamReaderisr=newInputStreamReader(is);

BufferedReaderin=newBufferedReader(isr);

Stringline=null;

while((line=in.readLine())!=null)

{

if(len!=0)//处理换行符的问题

{

str.append(""+line);

}

else

{

str.append(line);

}

len++;

}

in.close();

is.close();

}catch(IOExceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

returnstr.toString();

}

② java怎样读取文件所有内容,主要是跳行问题谢谢了

如果是字符流文件。可以使用java.nio.file.Files类的readAllLines将所有内容读到一个List<String>里专Google Guava库也提供了类属似的功能com.google.common.io.Filesstatic StringtoString(File file, Charset charset) Reads all characters from a file into a String, using the given character set.

③ java中如何从文件中读取数据

分为读字节,读字符两种读法◎◎◎FileInputStream 字节输入流读文件◎◎◎public class Maintest {public static void main(String[] args) throws IOException {File f=new File("G:\\just for fun\\xiangwei.txt");FileInputStream fin=new FileInputStream(f);byte[] bs=new byte[1024];int count=0;while((count=fin.read(bs))>0){String str=new String(bs,0,count);//反复定义新变量:每一次都 重新定义新变量,接收新读取的数据System.out.println(str);//反复输出新变量:每一次都 输出重新定义的新变量}fin.close();}}◎◎◎FileReader 字符输入流读文件◎◎◎public class Maintest {public static void main(String[] args) throws IOException {File f=new File("H:\\just for fun\\xiangwei.txt");FileReader fre=new FileReader(f);BufferedReader bre=new BufferedReader(fre);String str="";while((str=bre.readLine())!=null)//●判断最后一行不存在,为空{System.out.println(str);}bre.close(); fre.close();}}

④ JAVA中读取文件(二进制,字符)内容的几种方

JAVA中读取文件内容的方法有很多,比如按字节读取文件内容,按字符读取文件内容,按行读取文件内容,随机读取文件内容等方法,本文就以上方法的具体实现给出代码,需要的可以直接复制使用public class ReadFromFile {/*** 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。*/public static void readFileByBytes(String fileName) {File file = new File(fileName);InputStream in = null;try {System.out.println("以字节为单位读取文件内容,一次读一个字节:");// 一次读一个字节in = new FileInputStream(file);int tempbyte;while ((tempbyte = in.read()) != -1) {System.out.write(tempbyte);}in.close();} catch (IOException e) {e.printStackTrace();return;}try {System.out.println("以字节为单位读取文件内容,一次读多个字节:");// 一次读多个字节byte[] tempbytes = new byte[100];int byteread = 0;in = new FileInputStream(fileName);ReadFromFile.showAvailableBytes(in);// 读入多个字节到字节数组中,byteread为一次读入的字节数while ((byteread = in.read(tempbytes)) != -1) {System.out.write(tempbytes, 0, byteread);}} catch (Exception e1) {e1.printStackTrace();} finally {if (in != null) {try {in.close();} catch (IOException e1) {}}}}/*** 以字符为单位读取文件,常用于读文本,数字等类型的文件*/public static void readFileByChars(String fileName) {File file = new File(fileName);Reader reader = null;try {System.out.println("以字符为单位读取文件内容,一次读一个字节:");// 一次读一个字符reader = new InputStreamReader(new FileInputStream(file));int tempchar;while ((tempchar = reader.read()) != -1) {// 对于windows下,\r\n这两个字符在一起时,表示一个换行。// 但如果这两个字符分开显示时,会换两次行。// 因此,屏蔽掉\r,或者屏蔽\n。否则,将会多出很多空行。if (((char) tempchar) != '\r') {System.out.print((char) tempchar);}}reader.close();} catch (Exception e) {e.printStackTrace();}try {System.out.println("以字符为单位读取文件内容,一次读多个字节:");// 一次读多个字符char[] tempchars = new char[30];int charread = 0;reader = new InputStreamReader(new FileInputStream(fileName));// 读入多个字符到字符数组中,charread为一次读取字符数while ((charread = reader.read(tempchars)) != -1) {// 同样屏蔽掉\r不显示if ((charread == tempchars.length)&& (tempchars[tempchars.length – 1] != '\r')) {System.out.print(tempchars);} else {for (int i = 0; i < charread; i++) {if (tempchars[i] == '\r') {continue;} else {System.out.print(tempchars[i]);}}}}} catch (Exception e1) {e1.printStackTrace();} finally {if (reader != null) {try {reader.close();} catch (IOException e1) {}}}}/*** 以行为单位读取文件,常用于读面向行的格式化文件*/public static void readFileByLines(String fileName) {File file = new File(fileName);BufferedReader reader = null;try {System.out.println("以行为单位读取文件内容,一次读一整行:");reader = new BufferedReader(new FileReader(file));String tempString = null;int line = 1;// 一次读入一行,直到读入null为文件结束while ((tempString = reader.readLine()) != null) {// 显示行号System.out.println("line " + line + ": " + tempString);line++;}reader.close();} catch (IOException e) {e.printStackTrace();} finally {if (reader != null) {try {reader.close();} catch (IOException e1) {}}}}/*** 随机读取文件内容*/public static void readFileByRandomAccess(String fileName) {RandomAccessFile randomFile = null;try {System.out.println("随机读取一段文件内容:");// 打开一个随机访问文件流,按只读方式randomFile = new RandomAccessFile(fileName, "r");// 文件长度,字节数long fileLength = randomFile.length();// 读文件的起始位置int beginIndex = (fileLength > 4) ? 4 : 0;// 将读文件的开始位置移到beginIndex位置。randomFile.seek(beginIndex);byte[] bytes = new byte[10];int byteread = 0;// 一次读10个字节,如果文件内容不足10个字节,则读剩下的字节。// 将一次读取的字节数赋给bytereadwhile ((byteread = randomFile.read(bytes)) != -1) {System.out.write(bytes, 0, byteread);}} catch (IOException e) {e.printStackTrace();} finally {if (randomFile != null) {try {randomFile.close();} catch (IOException e1) {}}}}/*** 显示输入流中还剩的字节数*/private static void showAvailableBytes(InputStream in) {try {System.out.println("当前字节输入流中的字节数为:" + in.available());} catch (IOException e) {e.printStackTrace();}}public static void main(String[] args) {String fileName = "C:/temp/newTemp.txt";ReadFromFile.readFileByBytes(fileName);ReadFromFile.readFileByChars(fileName);ReadFromFile.readFileByLines(fileName);ReadFromFile.readFileByRandomAccess(fileName);}}

⑤ java中怎样从一个文件中读取文件信息

java读取文件路径、所占空间大小等文件消息,主要是使用FileInputStream类来操作,示例如内下:

importjava.io.File;importjava.io.FileInputStream;publicclassceshi{publicstaticvoidmain(String[]args)throwsException{容java.io.FilelocalFile=newFile("D:\1.txt");FileInputStreamins=newFileInputStream(localFile);intcountLen=ins.available();byte[]m_binArray=newbyte[countLen];ins.read(m_binArray);ins.close();System.out.println(localFile.getAbsoluteFile()+""+localFile.getFreeSpace());}}

运行结果如下:

⑥ java如何获取文件信息

File 类是对文件和文件夹的抽象,包含了对文件和文件夹的多种属性和操作方法。File类的常用方法如下表:返回方法说明String getName 获取文件名称 String getParent 获取文件的父路径字符串 String getPath 获取文件的相对路径字符串 String getAbsolutePath 获取文件的绝对路径字符串 boolean exists 判断文件或者文件夹是否存在 boolean isFile 判断是不是文件类型 boolean isDirectory 判断是不是文件夹类型 boolean delete 删除文件或文件夹,如果删除成功返回结果为true boolean mkdir 创建文件夹,创建成功返回true boolean setReadOnly 设置文件或文件夹的只读属性 long length 获取文件的长度 long lastModified 获取文件的最后修改时间 String[ ] list 获取文件夹中的文件和子文件夹的名称,并存放到字符串数组中

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

import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;public class ReadFile { public static void main(String[] args) throws IOException { String fileContent = readFileContent(""); System.out.println(fileContent); } //参数string为你的文件名 private static String readFileContent(String fileName) throws IOException { File file = new File(fileName); BufferedReader bf = new BufferedReader(new FileReader(file)); String content = ""; StringBuilder sb = new StringBuilder(); while(content != null){ content = bf.readLine(); if(content == null){ break; } sb.append(content.trim()); } bf.close(); return sb.toString(); }}求采纳为满意回答。

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

能有的,很简单,readLine即可,然后封装到Map里面,key就是序号,value就是后面的值

⑨ java如何读取txt文件内容

给你两个方法,你可以看看;//获取值返回String文本publicStringtxt2String(StringfilePath){Filefile=newFile(filePath);StringBuilderresult=newStringBuilder();try{BufferedReaderbr=newBufferedReader(newFileReader(file));//构造一个BufferedReader类来读取文件Strings=null;while((s=br.readLine())!=null){//使用readLine方法,一次读一行result.append(s+System.lineSeparator());}br.close();}catch(Exceptione){e.printStackTrace();}returnresult.toString();}//获取值不返回String文本publicvoidreadTxtFile(StringfilePath){try{Stringencoding="GBK";Filefile=newFile(filePath);if(file.isFile()&&file.exists()){//判断文件是否存在InputStreamReaderread=newInputStreamReader(newFileInputStream(file),encoding);//考虑到编码格式BufferedReaderbufferedReader=newBufferedReader(read);StringlineTxt=null;while((lineTxt=bufferedReader.readLine())!=null){System.out.println(lineTxt);}read.close();}else{System.out.println("找不到指定的文件");}}catch(Exceptione){System.out.println("读取文件内容出错");e.printStackTrace();}}

⑩ java文件如何读取

有几种方法读取吧File file = new File("d:\\a.txt");//把D盘目录下的a.txt读取出来,InputStream is = new FileInputStream(file);//把文件以字节流读回到内存中第二种是类加答载Demo1.class.getClassLoader().getResourceAsStream("a.txt");//Demo1为当前类名,a.txt在与Demo1.class在同一目录下。还有其它的就不说了

未经允许不得转载:山九号 » java文件内容读取|java中如何从文件中读取数据

赞 (0)