java 将不同文件下的相同多级目录下文件内容,合并到一个新的文件夹中,建立对应多级目录

java 将不同文件下的相同多级目录下文件内容,合并到一个新的文件夹中,建立对应多级目录,
新建文件,在新文件中写入合并内容,同时删除重复的行内容。
如:有文件夹A,B。将文件A、B两个文件夹中的所有内容(包含多级目录)合并到文件夹C中。若文件夹A中还有多级目录a1文件夹和文件a.txt文件,a1文件夹里有文件a1.txt;文件B中还有多级目录a1文件夹和文件a.txt文件、b.txt文件,a1文件夹里有文件a1.txt。将 A、B两个文件夹中的内容合并到文件夹C中,建立相应的多级目录a1文件夹和文件a.txt文件、b.txt文件,a1文件夹里有文件a1.txt,并将文件夹A中a.txt、a1.txt和文件夹B中a.txt、b.txt、a1.txt内容写到文件夹C所建立的对应a.txt、b.txt、a1.txt中,同时清除重复的行内容。

代码不写了,思路:
首先读取文件,依次读取所有目录,然后递归子目录,将所有目录下以a|b名称开头的文件内容分别按照行读取到a|b的ArrayList中,循环所有的ArrayList ,将每个内容都put到HashSet中去,这样,就得到你要的结果,最终输出到c目录下

当然,可以不读取到ArrayList中,直接put到HashSet,不过这样的话,就无法查找每个文件的原始内容。建议先分文件读取到多个ArrayList ,但不影响你的程序结果(可能会影响最终内容的顺序)
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-01-21
用到的类可能有:File,BufferedReader
File:检查文件或文件夹是否存在;创建文件或文件夹;列出当前目录下的所有文件和文件夹;
BufferedReader:关键有一个readLine()方法,一次读取一行。你的需求中说要删除相同行的内容,要用到这个。
具体的用法你看下API。本回答被提问者和网友采纳
第2个回答  2014-01-21
读取文件,判断是否是文件夹 然后递归
读取文件(readLine),拿到文件信息 存储,循环判断去重
最后写入
第3个回答  2014-01-21
你这个是要别人写代码的节奏吗???so easy的问题
第4个回答  2014-01-21
自己看看API
相似回答