❶ java读取、修改、写入txt文件
模拟:先创建一个TXT文件(内容来自控制台);然后读取文件并在控制台输出;最后实现对新创建的TXT文件(的数据进行排序后)的复制。分别对应三个函数,调用顺序需要注意:创建、读取、复制。
效果图如下:绿色部分为控制台输入的内容(当输入end时,结束)
packagecom.;
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.FileReader;
importjava.io.IOException;
importjava.io.OutputStreamWriter;
importjava.util.Arrays;
importjava.util.Scanner;
importjava.util.Vector;
publicclassCreateAndReadTxt{
//文件名称
publicstaticStringfileName=".txt";
publicstaticStringnewFileName=".txt";
//文件路径
publicfinalstaticStringURL=System.getProperty("user.dir");
//CreateAndReadTxt.class.getResource("/").getPath();
//创建TXT文件
publicstaticvoidcreateTxtFile(StringfName,StringfileContent){
//创建文件
fileName=fName+fileName;
Filefile=newFile(fileName);
//可以更改
file.setWritable(true);
//判断当前路径下是否存在同名文件
booleanisExist=file.exists();
if(isExist){
//文件存在,删除
file.delete();
}
//写入文件
try{
//文件写入对象
FileOutputStreamfos=newFileOutputStream(file);
//输入流写入----默认字符为GBK
OutputStreamWriterosw=newOutputStreamWriter(fos);
//写入
osw.write(fileContent);
//写入完毕后关闭
osw.close();
System.out.println("成功创建文件: "+fileName);
}catch(IOExceptione){
System.out.println("写入文件失败: "+e.getMessage());
}
}
//阅读文件
publicstaticvoidreadFile(StringfileName){
System.out.println("开始读取文件: "+fileName);
//产生文件对象
Filefile=newFile(fileName);
//
try{
//字符读取
FileReaderfr=newFileReader(file);
//缓冲处理
BufferedReaderbr=newBufferedReader(fr);
Stringstr="";
while((str=br.readLine())!=null){
System.out.println(str);
}
//关闭
br.close();
fr.close();
}catch(FileNotFoundExceptione){
System.out.println("读取文件失败: "+e.getMessage());
}catch(IOExceptione){
System.out.println("读取文件失败: "+e.getMessage());
}
}
//文件复制
publicstaticvoidFile(StringfromFileName,StringtoFileName){
//读取文件
Filefile=newFile(fromFileName);
try{
FileReaderfr=newFileReader(file);
BufferedReaderbr=newBufferedReader(fr);
//定义接收变量
Vector<Double>vec=newVector<Double>();
Strings="";
while(null!=(s=br.readLine())){
vec.add(Double.parseDouble(s));
}
br.close();
fr.close();
//保存到数组并进行排序
Doubledou[]=newDouble[vec.size()];
vec.toArray(dou);
Arrays.sort(dou);
System.out.println("========复制文件=========");
//写入新文件
newFileName="副本"+newFileName;
FilenewFile=newFile(toFileName);
FileOutputStreamfos=newFileOutputStream(newFile,true);
OutputStreamWriterosm=newOutputStreamWriter(fos);
for(Doubled:dou){
osm.write(d.doubleValue()+"
");
}
osm.close();
fos.close();
}catch(FileNotFoundExceptione){
System.out.println("读取文件失败: "+e.getMessage());
}catch(IOExceptione){
System.out.println("读取文件失败: "+e.getMessage());
}
}
publicstaticvoidmain(String[]args){
/**
*构造数据
*/
Scannerscan=newScanner(System.in);
StringBuildersb=newStringBuilder();
Strings="";
while(!("end".equals(s=scan.next()))){//当输入end时,结束
sb.append(s);
sb.append("
");
}
scan.close();
/**
*使用数据
*/
CreateAndReadTxt.createTxtFile("creat",sb.toString());
CreateAndReadTxt.readFile(fileName);
System.out.println(fileName);
CreateAndReadTxt.File(fileName,newFileName);
CreateAndReadTxt.readFile(newFileName);
}
}
❷ java怎样实现读写TXT文件
主要有用到java原生态的Io类,没有第三个包。直接上代码:
importjava.io.*;
publicclasswrite{
publicstaticvoidmain(String[]args){
write("E://123.txt","hello");
}
publicstaticvoidwrite(Stringpath,Stringcontent){
try{
Filef=newFile(path);
if(f.exists()){
System.out.println("文件存在");
}else{
System.out.println("文件不存在,正在创建...");
if(f.createNewFile()){
System.out.println("文件创建成功!");
}else{
System.out.println("文件创建失败!");
}
}
BufferedWriteroutput=newBufferedWriter(newFileWriter(f));
output.write(content);
output.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}
❸ JAVA 写入TXT文件
在pw.write(s),后面加入pw.flush()即可。
在建立printWriter实例时(PrintWrite pw = new PrintWrite(fos,,true)),需要用boolean型指定,是不是自动刷新,如果没有指定自动刷新,则需要自己来flush.
呵,呵,要讲清楚啦。
楼主我只要50分额。
❹ java怎么写入txt文件 博客
定义一个输出文件,然后输出就可以了,具体见下面的代码
import java.io.*;
public class StreamDemo
{
public static void main(String args[])
{
File f = new File("c:\\temp.txt") ;
OutputStream out = null ;
try
{
out = new FileOutputStream(f) ;
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
// 将字符串转成字节数组
byte b[] = "Hello World!!!".getBytes() ;
try
{
// 将byte数组写入到文件之中
out.write(b) ;
}
catch (IOException e1)
{
e1.printStackTrace();
}
try
{
out.close() ;
}
catch (IOException e2)
{
e2.printStackTrace();
}
// 以下为读文件操作
InputStream in = null ;
try
{
in = new FileInputStream(f) ;
}
catch (FileNotFoundException e3)
{
e3.printStackTrace();
}
// 开辟一个空间用于接收文件读进来的数据
byte b1[] = new byte[1024] ;
int i = 0 ;
try
{
// 将b1的引用传递到read()方法之中,同时此方法返回读入数据的个数
i = in.read(b1) ;
}
catch (IOException e4)
{
e4.printStackTrace();
}
try
{
in.close() ;
}
catch (IOException e5)
{
e5.printStackTrace();
}
//将byte数组转换为字符串输出
System.out.println(new String(b1,0,i)) ;
}
}
❺ java 怎么写一个txt文件
File file = new File("d:\\a.txt");
BufferedWriter bf = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
bf.write("assdsdfefsdfs");
bf.close();
❻ java如何写入txt文件
用另一个构造方法
FileWriter fileWriter=new FileWriter("c:\\Result.txt", true); // true代表追加
同理
BufferedWriter writer = new BufferedWriter(new FileWriter(new File("c:\\Result.txt"), true));
❼ Java往TXT文件写入文字的问题
用java往文件里面写入文字可以用到java里面的I/O流来实现功能, 一般都是用FileWriter类来实现要求。具体的代码示例如下:
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.FileWriter;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
/**
*java读写文件
*读取d:/1.txt文件内容,写入f:/text.txt文件中.
*
*写入文件换行用fw.write(" ");
*或者fw.write(" ");
*@authoryoung
*
*/
publicclassFileWriterTest{
//读写文件
publicstaticvoidrwFile(){
FileWriterfw=null;
BufferedReaderbr=null;
try{
//定义FileWriter对象,关联文件f: ext.txt,用来向文件写内容
fw=newFileWriter("f:\text.txt",true);
//定义bufferedReader对象,用来读取d:1.txt文件内容
br=newBufferedReader(newInputStreamReader(
newFileInputStream("d:\1.txt"),"UTF-8"));
Stringline=null;
//每次读取一行内容,循环读取,读到文件末尾结束
while((line=br.readLine())!=null){
System.out.println("文件内容:"+line);
fw.write(line);
//刷新缓冲流,
fw.flush();
}
//关闭I/O流
br.close();
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(fw!=null){
try{
fw.close();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
}
publicstaticvoidmain(String[]args){
rwFile();
}
}
❽ java如何写入txt文件
import java.io.*;
import java.util.*;
public class LogTest{
public static void main(String[] args)
{
File log=new File("user\\log\\login.log");
String newLog="UserName:Jim Green | Date:"+new Date()+" | IP:202.65.21.14";
appendLog(log,newLog);
}
public static void appendLog(File log,String newLog)
{
Scanner sc=null;
PrintWriter pw=null;
try{
if(!log.exists())//如果文件不存在,则新建.
{
File parentDir=new File(log.getParent());
if(!parentDir.exists())//如果所在目录不存在,则新建.
parentDir.mkdirs();
log.createNewFile();
}
sc=new Scanner(log);
StringBuilder sb=new StringBuilder();
while(sc.hasNextLine())//先读出旧文件内容,并暂存sb中;
{
sb.append(sc.nextLine());
sb.append("\r\n");//换行符作为间隔,扫描器读不出来,因此要自己添加.
}
sc.close();
pw=new PrintWriter(new FileWriter(log),true);
/*A.*/pw.println(sb.toString());//,写入旧文件内容.
/*B.*/pw.println(newLog);//写入新日志.
/*
* 如果先写入A,最近日志在文件最后.
* 如是先写入B,最近日志在文件最前.
*/
pw.close();
}
catch(IOException ex)
{
ex.printStackTrace();
}
}
}
❾ java如何追加写入txt文件
java追加写入txt文件代码及注释参考如下:
publicvoidm(){
FileWriterff=null;
try{
//查看C盘是否有a.txt文件来判定是否创建
Filef=newFile("c:\a.txt");
ff=newFileWriter(f,true);//将字节写入文件末尾处,相当于追加信息。
}catch(IOExceptione){
e.printStackTrace();
}
PrintWriterp=newPrintWriter(ff);
p.println("这里就可以写入要追加的内容了");//此处为追加内容
p.flush();
ff.try{
f.flush();
p.close();
ff.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
❿ java如何追加写入txt文件
java中,对文件进行追加内容操作的三种方法!
importjava.io.BufferedWriter;
importjava.io.FileOutputStream;
importjava.io.FileWriter;
importjava.io.IOException;
importjava.io.OutputStreamWriter;
importjava.io.PrintWriter;
importjava.io.RandomAccessFile;
//如果文件存在,则追加内容;如果文件不存在,则创建文件,追加内容的三种方法
{
@SuppressWarnings("static-access")
publicstaticvoidmain(String[]args){
AppendContentToFilea=newAppendContentToFile();
a.method1();
a.method2("E:\dd.txt","222222222222222");
a.method3("E:\dd.txt","33333333333");
}
方法1:
publicvoidmethod1(){
FileWriterfw=null;
try{
//如果文件存在,则追加内容;如果文件不存在,则创建文件
Filef=newFile("E:\dd.txt");
fw=newFileWriter(f,true);
}catch(IOExceptione){
e.printStackTrace();
}
PrintWriterpw=newPrintWriter(fw);
pw.println("追加内容");
pw.flush();
try{
fw.flush();
pw.close();
fw.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
方法2:
publicstaticvoidmethod2(Stringfile,Stringconent){
BufferedWriterout=null;
try{
out=newBufferedWriter(newOutputStreamWriter(
newFileOutputStream(file,true)));
out.write(conent+" ");
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
out.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
方法3:
publicstaticvoidmethod3(StringfileName,Stringcontent){
try{
//打开一个随机访问文件流,按读写方式
RandomAccessFilerandomFile=newRandomAccessFile(fileName,"rw");
//文件长度,字节数
longfileLength=randomFile.length();
//将写文件指针移到文件尾。
randomFile.seek(fileLength);
randomFile.writeBytes(content+" ");
randomFile.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}