使用java实现在文件中添加字符串

使用java实现在文件中添加字符串,第1张

我在一个项目中需要使用C:\WINDOWS\system \drivers\etc这个目录下的hosts文件 并且在该文件的最后加上一个这样的字符串:     rsgl_dbserve 由于对Java的文件 *** 作不是很熟练 花了半天的功夫才找到了 具体的实现办法如下:

import java io FileOutputStreamimport java io IOExceptionimport java io OutputStreamWriter

public class FileWriterTest {

public static void main(String[] args) {  FileOutputStream stream   OutputStreamWriter writer  try {

//主要是使用了FileOutputStream的构造函数 FileOutputStream (File file boolean append) //这里参数append为true表示可以添加 详细使用参考JDK帮助文档资料   stream = new FileOutputStream( C:\\WINDOWS\\system \\drivers\\etc\\hosts true)writer =  new OutputStreamWriter(stream)  writer write(     rsgl_dbserve )  writer close()  stream close()  } catch (IOException e) {      e printStackTrace()  }   }

}

以上代码在eclipse上调试成功!

为了增加代码的重用性 可以编写一个方法如下:

lishixinzhi/Article/program/Java/hx/201311/26427

java文件追加内容的三种方法:

方法一:

public static void writeToTxtByRandomAccessFile(File file, String str){

RandomAccessFile randomAccessFile = null

try {

randomAccessFile = new RandomAccessFile(file,"rw")

long len = randomAccessFile.length()

randomAccessFile.seek(len)

randomAccessFile.writeBytes(new String(str.getBytes(),"iso8859-1")+"\r\n")

} catch (FileNotFoundException e) {

e.printStackTrace()

}catch (IOException e) {

e.printStackTrace()

}finally{

try {

randomAccessFile.close()

} catch (IOException e) {

e.printStackTrace()

}

}

}

方法二:

public static void writeToTxtByFileWriter(File file, String content){

BufferedWriter bw = null

try {

FileWriter fw = new FileWriter(file, true)

bw = new BufferedWriter(fw)

bw.write(content)

} catch (IOException e) {

e.printStackTrace()

}finally{

try {

bw.close()

} catch (IOException e) {

e.printStackTrace()

}

}

}

方法三:

public static void writeToTxtByOutputStream(File file, String content){

BufferedOutputStream bufferedOutputStream = null

try {

bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(file, true))

bufferedOutputStream.write(content.getBytes())

} catch (FileNotFoundException e) {

e.printStackTrace()

} catch(IOException e ){

e.printStackTrace()

}finally{

try {

bufferedOutputStream.close()

} catch (IOException e) {

e.printStackTrace()

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11436125.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存