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文件内容,再创建一个新的txt文件,把内容保存进去
public static void main(String[] args) throws IOException,
ClassNotFoundException {
try {
FileInputStream in = new FileInputStream(//创建输入流
"E:\\0326java\\javase\\src\\io\\TestFileInputStream.java");
FileOutputStream out = new FileOutputStream("E:\\1.txt");//创建输出流
int i = 0;
while ((i = in.read()) != -1) {
System.out.print((char) i);//循环读取文件数据
out.write(i);//每读一个数据输入到1.txt中
}
out.flush();
out.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
③ java如何读取txt文件的内容
读取TXT文件内容在Java中并非难事,基本步骤如下:
TXT文件通常通过流方式读取。
Java提供FileInputStream类,使用文件路径或文件对象初始化流。
构造InputStreamReader,指定字符编码,以方便文本读取。
使用BufferedReader配合readLine方法,读取整行文本。
循环利用BufferedReader读取文件内容,完成所需操作。
流是Java中重要概念,理解流的使用至关重要。
新版本Java引入NIO API,简化文件读写。
对于JDK11及以上,读取文本文件非常简单。
对于JDK8,使用流按行读取文本内容。
注意:在读取文件时可能出现乱码问题,解决方法是使用类库Cpdetector并导入相关jar包或使用maven。
对于二进制读取,可选用DataInputStream或RandomAccessFile。
RandomAccessFile允许移动文件指针,适用于跳过字节或整体读取。
DataInputStream为纯粹的输入流。
处理大量数据时,考虑以下策略:
1. 使用ByteBuffer和堆外内存,避免OOM,适合内存充足情况。
2. 利用RandomAccessFile分块读取,记录读取位置,处理后继续读。
3. 多线程处理,将文件分割为多个块,分发至多个线程并发处理。
4. 使用BufferedReader与正则表达式匹配特征数据,处理后继续读取。
④ JAVA 读取 TXT 文件中的内容
在Java中读取TXT文件内容,可以使用FileInputStream类读取文件,再通过 InputStreamReader类将其转换为可读取的字符流,接着使用BufferedReader类进行逐行读取。具体代码如下:
首先创建FileInputStream对象,使用File类指定文件路径,例如:
FileInputStream fis = new FileInputStream(new File(path));
接着,创建一个InputStreamReader对象,将FileInputStream作为参数传递给它:
InputStreamReader isr = new InputStreamReader(fis);
然后,利用BufferedReader对字符流进行处理:
BufferedReader br = new BufferedReader(isr);
为了存储每一行读取的内容,我们定义一个字符串变量str:
String str = "";
使用while循环来读取文件中的每一行,直到没有更多的行为止。在循环内部,使用readLine()方法读取一行,并将其赋值给str变量:
while((str=br.readLine())!=null){
System.out.println(str);
}
这个循环会持续执行,直到读取到文件的最后一行。每次循环中,readLine()方法会读取一行文本,并将其存储在str变量中,然后将str的值打印出来。当readLine()返回null时,表示文件读取完毕,循环结束。
需要注意的是,使用完这些对象后,应该确保关闭它们以释放资源。可以使用try-with-resources语句来自动完成关闭操作,如下所示:
try (FileInputStream fis = new FileInputStream(new File(path));
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);) {
String str = "";
while((str=br.readLine())!=null){
System.out.println(str);
}
}
这样可以确保在读取文件过程中,资源得到及时释放,避免资源泄露。
以上就是使用Java读取TXT文件内容的完整步骤,包括创建文件流对象、读取文件内容以及处理读取到的数据。
⑤ 怎样用JAVA打开一个已经写好的TXT文件
JAVA打开一个已经写好的TXT文件代码如下:
(1):public File chooseFile(int chooseMode)
{
JFileChooser fileChooser;
File fileName;
fileChooser=new JFileChooser();
int returnVal=-1;
// fileFilter=new FileNameExtensionFilter("文本文档","txt");
switch(chooseMode)
{
case FILE_OPEN_CHOOSE:
returnVal=fileChooser.showOpenDialog(this);
break;
case FILE_SAVE_CHOOSE:
returnVal=fileChooser.showSaveDialog(this);
break;
}
if(returnVal==fileChooser.APPROVE_OPTION)
fileName=fileChooser.getSelectedFile();
else fileName=null;
return fileName;
}
这个是通过打开文件对话框获取文件
public void showFile(File file) throws IOException
{
textArea.setText("");
BufferedReader br=new BufferedReader(new FileReader(file));
String text;
// buffer=new StringBuffer();
while((text=br.readLine())!=null)
// buffer.append(text+"\n");
textArea.append(text+"\n");
}
(2):import java.io.*;
import java.util.*;
public class readData
{
public static void main(String[] args)
{
BufferedReader in=new BufferedReader(new FileReader("你的文件名.txt"));
String s;
int i=0;
while((s=in.readLine())!=null)
{
StringTokenizer t=new StringTokenizer(s,"|");//"|"为分隔符
p[i].id=Integer.parseInt(t.nextToken());//将第一个记录赋给变量id
p[i].name=t.nextToken();//将第二个记录赋给变量name
p[i].age=Integer.parseInt(t.nextToken());//将第三个记录赋给变量age
p[i].sex=t.nextToken();//将第四个记录赋给变量sex
i++;
}
in.close();
}
}
//**********************************************************
假设赋值得变量结构如下:
class p
{
public int id;
public String name;
public int age;
public String sex;
}