Sign-up....

请给看看:为什么语法都对,但就是写不进文本文件:

String filename = "a.js";

String ss = "sfasdfsfasdf";

try{

PrintWriter mywrite;

mywrite = new PrintWriter(new FileOutputStream(filename));

mywrite.println(ss);

mywrite.close();

}catch(IOException e){

out.println(e.getMessage());

}

a.js文本文件与该jsp网页在同一目录里,运行这个网页,但是发现a.js文件里根本没有任何数据。这是为什么?

[292 byte] By [msdn] at [2007-10-25 21:50:09]
# 1 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
String filename = ".\\a.js";

String ss = "sfasdfsfasdf";

try{

PrintWriter mywrite;

mywrite = new PrintWriter(new FileOutputStream(filename));

mywrite.println(ss);

mywrite.close();

}catch(IOException e){

out.println(e.getMessage());

}

fireflyqt at 2005-01-06 12:28:00 >
# 2 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
BufferedWriter fileWrite = null;

String filePath = "f:/tttt/tet.txt";

try{

fileWrite = new BufferedWriter(new FileWriter(filePath,true));

fileWrite.newLine();

fileWrite.write("这个不错");

fileWrite.close();

}catch(IOException e){

System.out.println("IOException::"+e);

}

这样写应该没问题的

hubofly at 2005-01-06 12:33:00 >
# 3 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
还是不行呀。。没有任何反应。。
tiangeng at 2005-01-06 12:33:00 >
# 4 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
路径问题,改成这样

String path = request.getRealPath("/");

String filename = path + "/a.js";

...

hxzg001 at 2005-01-06 12:54:00 >
# 5 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
还是不行呀,是不是跟我访问这个文件的权限有关。该文件在服务器上,如果不允许它可以写,是不是就写不进去?
tiangeng at 2005-01-06 12:59:00 >
# 6 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
你现在本地测试啊,如果本地测试可以,那就是文件权限问题了
funcreal at 2005-01-06 13:09:00 >
# 7 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
应该文件权限的问题吧

建议楼主查查有没有赋予文件夹相应的权限

pengxin_hyq at 2005-01-06 13:11:00 >
# 8 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
mywrite.flush(ss);
drugon at 2005-01-06 13:18:00 >
# 9 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
谢谢大家,找到原因了。可是,新问题出来了。写入文件中的中文怎么都是???号呀?
tiangeng at 2005-01-06 13:21:00 >
# 10 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
Java中的流写的文件,用其它东西打开是乱码,只有再用Java流读才是正确的,要不你用PrintStream这个类,这个流输出的文件可以用记事本打开看的。
drugon at 2005-01-06 13:52:00 >
# 11 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
设置编码格式。
drugon at 2005-01-06 13:53:00 >
# 12 Re: 请给看看:为什么语法都对,但就是写不进文本文件:
FileOutputStream不要用,改用FileWriter

PrintWriter的println后需要调用flush()方法把信息写入文件

Eraserpro at 2005-01-06 14:36:00 >

Web

All Classified