请教大家一个关于JAVA文件输出的实现问题~~

qq_23030725 2015-02-05 09:59:28
其实很简单,就是往一个文件里输出信息!但我是想在“递归”中实现!

public class FCADSTREE {
static File file = new File("temp.txt");////这行必须要写出来吧?若写在main里则递归函数不认。

public static void main(String[] args) {
某递归函数(参数,参数);
}

public static void 某递归函数(参数,参数) IOExeption {
PrintWriter output = new PrintWriter(file);////问题就在这儿!!!
if (条件) 某递归函数(参数,参数);
output.println(要在文件中打印的东西);
}
}


首先结果是不对的,文件里根本就没东西,我想原因应该就是在递归函数中每次都创建输入,每次都刷了重新写吧?
可是PrintWriter应该写在哪呢?写出去就没有IOE了,可是写进来~~~
请教!
...全文
220 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_23030725 2015-02-05
  • 打赏
  • 举报
回复
引用 5 楼 taodengwen 的回复:
流能放到main函数里面吗? 以参数的形式传递到递归函数里面
感谢!
  • 打赏
  • 举报
回复
流能放到main函数里面吗? 以参数的形式传递到递归函数里面
qq_23030725 2015-02-05
  • 打赏
  • 举报
回复
引用 2 楼 losebaby 的回复:
在每次写文件结束后请添加: output.flush(); 真正写入到文件。
用flush确实可以,谢谢。 但只显示最后一次输入的,可能就是因为每次递归都重新打开文件?应该怎么办呢? 其实把声明变量写在递归函数里我看着也不舒服。 用write暂时先不考虑,因为我是想自动格式化输入。
可乐罐 2015-02-05
  • 打赏
  • 举报
回复
补充下,你的这段代码都没有向output实例的流写入数据,就算提交也不会有新玩意儿记录到文件的。 请调用write方法写数据
可乐罐 2015-02-05
  • 打赏
  • 举报
回复
在每次写文件结束后请添加: output.flush(); 真正写入到文件。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧