首页>>后端>>SpringBoot->java修改文件内容(java 修改文件内容)

java修改文件内容(java 修改文件内容)

时间:2023-12-02 本站 点击:0

Java修改、删除properties文件内容

 java 修改properties文件,参考如下:

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

Properties prop = new Properties();// 属性集合对象

FileInputStream fis = new FileInputStream("src/test.properties");// 属性文件输入流

prop.load(fis);// 将属性文件流装载到Properties对象中

fis.close();// 关闭流

// 获取属性值,sitename已在文件中定义

System.out.println("获取属性值:password=" + prop.getProperty("password"));

// 获取属性值,country未在文件中定义,将在此程序中返回一个默认值,但并不修改属性文件

// System.out.println("获取属性值:country=" + prop.getProperty("country", "中国"));

java读取并修改文件

你可以使用RandomAccessFile这个类来同时处理文件的读写。用法类似一个文件句柄,有个指针指向目前读写的位置。但是改写文件跟同时处理文件的读写不一样,改写文件意味着可能要改变文件的大小,而同时处理文件的读写只能覆盖原来文件的内容。RandomAccessFile提供了setLength(long newLength)方法来改变文件的大小。问题来了...如果使用覆盖内容的方法来实现改写,你就必须要自己来移动文件的内容(类似数组的插入),如果改写的内容比原来内容少,则需要把后面的内容往前移动,如果改写的内容比原来内容多,则需要把后面的内容往后移动,这需要你自己去设计算法和缓存机制。很麻烦,没有人愿意这样做。第2个问题文件的修改时间应该会改变,我只是猜,你可以写个程序运行看下。

java 中怎么修改txt文件中某一行的内容

用临时文件,按行读源文件,不修改的行,直接输出到临时文件、要修改的行在修改后,再写到临时文件

Java 如何修改文件的某一行内容

import java.io.BufferedReader;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.io.PrintWriter;

public class Day02_B {

static String path="K:/Test/Name.txt";//路径

public static void main(String[] args) {

File fileText=new File(path);//文件

if(fileText.canExecute()) //如果文件存在就继续

setText(fileText,"刚","xx");//“刚”指定改为:“XX”

}

private static void setText(File fileText,String target,String src) {//修改

BufferedReader br=null;

PrintWriter pw=null;

StringBuffer buff=new StringBuffer();//临时容器!

String line=System.getProperty("line.separator");//平台换行!

try {

br=new BufferedReader(new FileReader(fileText));

for(String str=br.readLine();str!=null;str=br.readLine()) {

if(str.contains(target)) 

str=str.replaceAll(target,src);

buff.append(str+line);

}

pw=new PrintWriter(new FileWriter(fileText),true);

pw.println(buff);

} catch (FileNotFoundException e) {

e.printStackTrace();

}catch (IOException e) {

e.printStackTrace();

}finally {

if(br!=null)

try {

br.close();

} catch (IOException e) {

e.printStackTrace();

}

if(pw!=null) 

pw.close();

}

}

}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/SpringBoot/9932.html