java对文件的操作。

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

最近在开发代码生成器的时候,需要读取模版文件,根据模板替换相应的字符,然后输出所期望的类,因为在java或者C++里面没有直接支持替换的功能,因此在实现模板字符替换的时候,需要编写一定的代码实现替换功能。对模板文件的操作,在 JDK 1.1中,支持两个新的对象 Reader & Writer, 它们只能用来对文本文件进行操作,而 JDK1.1中的 InputStream & OutputStream 可以对文本文件或二进制文件进行操作。

用FileReader 来读取文件的常用方法是:

FileReader fileReader = new FileReader("test.txt");

BufferedReader bufferReader= new BufferedReader(fr);

用 br.readLine() 来读出数据(comment:这里读取方式的是一行一行地),然后用bufferReader.close() 关闭缓存,用fileReader.close() 关闭文件。

用 FileWriter 来写入文件的常用方法是:

FileWriter fileWriter = new FileWriter("new_test.txt");

PrintWriter out = new PrintWriter(fw);

在用out.print 或 out.println 来往文件中写入数据,out.print 和 out.println的唯一区别是后者写

入数据或会自动开一新行。写完后要记得 用out.close() 关闭输出,用fileWriter.close() 关闭文件。

下面地例子是读取一个文件地内容到另外一个文件中:

import java.io.*;

public class TEST {

private static final String TEMPLATE_PATH = "E:"+File.separator;//假设文件放置在E盘

public static void main(String[] args) {

String lineContent = null;//用来存放读取出来地每一行内容

try{

FileReader fr = new FileReader(TEMPLATE_PATH+"test.txt");

BufferedReader br = new BufferedReader(fr);//读取文件test.txt

FileWriter fw = new FileWriter(TEMPLATE_PATH+"new_test.txt");//创建新文件

PrintWriter out = new PrintWriter(fw);

lineContent = new String();

while ((lineContent = br.readLine()) != null) {//判断是否读取了全部数据,

/*

在这里可以做替换动作

*/

System.out.println(lineContent);

out.print(lineContent);//向新文件输入数据

}

out.close();

fw.close();

}catch(Exception e){

e.printStackTrace();

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航