某些时候,我们希望读写某个包下面的文件,例如包com.coderdream.chapter20.flyweight.sample下的txt文件,但我们并不想把文件写成绝对路径。
解决办法:
1、我们可以通过新建一个空文件,然后的到当前文件的绝对路径;
2、然后用这个路径+文件夹名来新建一个BufferedReader。
这样就可以顺利读取包中的文件了。
1 /**
2 * 构造函数
3 *
4 * @param charname
5 */
6 public BigChar(char charname) {
7 this.charname = charname;
8 try {
9 File file = new File("");
10 String s = file.getAbsolutePath();
11 BufferedReader reader = new BufferedReader(new FileReader(s
12 + "\\src\\com\\coderdream\\chapter20"
13 + "\\flyweight\\sample\\big" + charname + ".txt"));
14 String line;
15 StringBuffer buf = new StringBuffer();
16 while ((line = reader.readLine()) != null) {
17 buf.append(line);
18 buf.append("\n");
19 }
20
21 reader.close();
22 this.fontdata = buf.toString();
23 } catch (IOException e) {
24 this.fontdata = charname + "?";
25 }
26 }
posted on 2007-10-31 17:36
CoderDream 阅读(630)
评论(0) 编辑 收藏 所属分类:
Java-15.IO