论坛首页 招聘求职论坛

一道Java I/O的笔试题

浏览 4720 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-10-06  
假设D:/dir目录下放着100个文件,文件名为:file001.txt,file002,file003.txt......file100.txt。请写一高效程序,将这100个文件的内容按文件名编号顺序合并成一个文件file.txt。

这题的一般思路是:
1、实现filenameFilter接口对文件按编号排序。
2、利用PrintWriter创建file.txt准备写入
3、用bufferedReader依次打开每个文件,然后每读一行,就写入一行。这里不把每个文件内容
存在内存里然后一并写入的目的是防止文件内容过大。

有什么其他更高效的方法吗,比如利用NIO?
   发表时间:2008-10-06  
hyxw5890 写道

1、实现filenameFilter接口对文件按编号排序。


这个接口可以排序吗??? 建议你好好的去查一下java doc
0 请登录后投票
   发表时间:2008-10-06  
有文件名直接循环就好了。。。。
0 请登录后投票
   发表时间:2008-10-06  
1.使用String.format方法格式化得到文件名(从1到100)。
2.BufferedRead和BufferedWriter读写。
0 请登录后投票
   发表时间:2008-10-07  
开个玩笑....
Process process = Runtime.getRuntime().exec("cmd /c type file*.txt > file.txt ");
0 请登录后投票
   发表时间:2008-10-07  
`cat *.txt > file.txt`
0 请登录后投票
   发表时间:2008-10-08  
用命令行做可以

但是有排序文件吗?
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics