【发布时间】:2016-06-27 23:13:56
【问题描述】:
我正在尝试编写一个 java 程序,它将接受两个参数,dirName 和 fileName。该程序将搜索dirName 中以.java 结尾的所有文件,然后将它们连接到一个名为fileName 的新文件夹中。到目前为止,我有一种方法可以在 dirName 中搜索 .java 文件,然后我将它们放在一个名为 list 的文件数组中,但现在我正在努力将这个数组中的文件迭代地添加到我的新文件夹 fileName .这是我目前所拥有的:
import java.io.File;
import java.io.FileInputStream;
import java.io.FilenameFilter;
import java.util.ArrayList;
public class TwoFiles {
File dir;
File name;
public TwoFiles(File dirName, File fileName) {
dir = dirName;
name = fileName;
}
public void setDir(File m) {
this.dir = m;
}
public File getDir() {
return dir;
}
public void setNewFolder(File n) {
this.name = n;
}
public File getNewFolder() {
return name;
}
public File[] Finder(File dir) {
dir = getDir();
return dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String filename) {
return name.endsWith(".java"); }
} );
}
public static void main(String[] args) {
File folder = null;
File newFolder = null;
Integer b = null;
TwoFiles tf = new TwoFiles(folder, newFolder);
folder = tf.getDir();
newFolder = tf.getNewFolder();
File[] list = tf.Finder(folder); //add to an array
//here is where I've been experimenting to add files in `list` to new folder, `fileName`.
for (File file : list)
{
FileInputStream inFile = new FileInputStream(file);
while ((b = inFile.read()) != -1)
newFolder.write(b);
inFile.close();
}
//copy files from array (list) into newFolder
}
}
感谢您的宝贵时间。
【问题讨论】:
-
我认为您的意思是“复制”到新文件夹,而不是“连接”
-
规范使用连接