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();
}
}
}