利用FTPfile.listfile()方法把现有文件夹文件队列化,但是目前文件夹中文件非常多,在执行此方法时经常进入假死状态,有什么优化的方法吗?代码如下:
try
{
//读取文件
FTPFile[] fileArray = null;
//切换到source路径下
boolean changedir = ftpc.changeWorkingDirectory(ftpserver.getPath());
int j = 0;
if (changedir) {
ftpc.setControlEncoding("utf-8");
fileArray = ftpc.listFiles();
for (int i = 0; i < fileArray.length; i++) {
String f = fileArray[i].getName();
if (fileArray[i].getName().equals(filenm)) {
j = i;
}
}
}
FTPFile file = fileArray[j];
return file;
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
try
{
//读取文件
FTPFile[] fileArray = null;
//切换到source路径下
boolean changedir = ftpc.changeWorkingDirectory(ftpserver.getPath());
int j = 0;
if (changedir) {
ftpc.setControlEncoding("utf-8");
fileArray = ftpc.listFiles();
for (int i = 0; i < fileArray.length; i++) {
String f = fileArray[i].getName();
if (fileArray[i].getName().equals(filenm)) {
j = i;
}
}
}
FTPFile file = fileArray[j];
return file;
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
这个试试
您好,感谢您的答复,您说的很有道理。这块分配端口和释放端口的问题,之前我们已经遇见并解决了,另 公司的文件服务器是Windows的。现在这个文件夹里的文件数量万甚至十万,只要一执行listFile就会假死,请问下有没有直接根据文件绝对路径初始化FTPFile的方法呢?感谢大神