本文介绍了从两个阵列寻找共同文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从两个数组找到共同的名字的文件。
我在两个不同的阵列挽救了两个不同的文件夹中的文件名。
现在我创建一个公共文件阵列将具有共同的名字的文件。
1名:阵列contaning文件名文件夹1
2名:阵列contaning文件名文件夹中2
进口的java.io.File;
进口的java.util。*;公共类ListFiles1
{ 公共静态无效的主要(字串[] args)
{ 字符串PATH1 =C:\\\\; 字符串PATH2 =D:\\\\; 文件文件夹1 =新的文件(路径1);
文件资料夹2 =新的文件(路径2); 的String [] F1 = folder1.list(); 文件[] = listOfFiles1 folder1.listFiles();
文件[] = listOfFiles2 folder2.listFiles(); ArrayList的<串GT; fileNames1 =新的ArrayList<>();
ArrayList的<串GT; fileNames2 =新的ArrayList<>(); 的for(int i = 0; I< listOfFiles1.length;我++)
{ 如果(listOfFiles1 [I] .isFile())
{
fileNames1.add(listOfFiles1 [I] .getName());
的System.out.println(F1 [I] +是一个文件);
} } 对于(INT J = 0; J< listOfFiles2.length; J ++)
{ 如果(listOfFiles2 [J] .isFile())
{
fileNames2.add(listOfFiles2 [J] .getName());
}
} ArrayList的<串GT; commonfiles =新的ArrayList<>();
的for(int i = 0; I< listOfFiles1.length;我++)
{
对于(INT J = 0; I< listOfFiles2.length; J ++)
{
串tempfilename1;
串tempfilename2;
tempfilename1 = fileNames1 [I]
tempfilename2 = fileNames2 [J]。
如果(tempfilename1.equals(tempfilename2))
{
commonfiles.add(tempfilename1);
}
}
}
}
}
我写这篇code,但编译器为这个错误:
Main.java:52:错误:阵列必需的,但ArrayList的<串GT;发现
tempfilename1 = fileNames1 [I]
^
Main.java:53:错误:阵列必需的,但ArrayList的<串GT;发现
tempfilename2 = fileNames2 [J]。
^
解决方案
If filenames1
is an array
you cannot use ArrayList
method get(int i)
.
You need to access the array
elements by using arrayName[elementIndex]
.
In your case:
tempfilename1=filenames1[i];
tempfilename2=fileNames2[j];
这篇关于从两个阵列寻找共同文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!