public void get(Object o) throws Exception
{
//
//对FTPClient的处理,
//
FtpClient fc=new FtpClient();
String path;//文件的存储路径
if(1==1) //不存在某文件则报错
{
throw new Exception();
}
else //不存在则继续执行
{
try{
dealFTPfiles(o,fc,path);
}catch()
{
}
finally
{
//删除文件
}
}
}
//对文件夹进行遍历获得文件,以及将文件COPY到指定目录中
public void dealFTPfiles(Object o,FtpClient fc,String pathTemp)
{
FTPFiles[] ftpFiles=fc.listFiles(pathTemp);
Topo topo=new Topo();
//topo.setSomethings //将相关信息保存进去
int countSize=0; //用于记录文件的个数,并将来用于保存对象
String folderPath=null; //用于存放文件的名称
boolean isFolder=false; //用于判断是上传的是文件夹 还是文件
for(int i=0;i<ftpFiles.length;i++) //前提是这个获取文件的方式是顺序来的,而不是逆序
{
if(3<=countSize)
{
if(3!=countSize||null==topo.setImageNames||null==to。。。//设置相关内容是否为空)
{
//抛出异常
}
else
{
countSiz=0;
//再去查找数据库,看是否有相同的topo名称,如果有则覆盖
//保存进入数据库
topo.setName="";
folderPath="";
}
}
if(ftpFiles[i].isDictoryDir())
{
isFolder=true;
String path=path+Files.seperators+ftpFiles[i].getNanme; //递归调用,一直到最底下的文件
dealFTPfiles(o,fc,path);
}
else //是文件的时候,则在目录中复制它的文件件名并将该文件COPY到TOPOLOGICAL当中去,并删除该文件
{
if(!isFolder)
{
//报错
}
if(null=topo.getName()||""==topo.getName())//对topo的name进行设置
{
folderPath=//将名字保存进来 //获取文件夹的名字
topo.setName()//
if()//检查该文件所在的文件夹是否在TOPOLOGICAL中创建,未创建,则创建,
{
//创建文件夹
}
}
String fileName=ftpFilesp[i].toLowerCase() ;
if(fileName.getName())//用于图片的判断,将图片路径保存进去
{
//对topo的附件进行图片设置
countSize++;
//对其进行重建,
}
if else(fileName.getName()) //用于判断是否是XML
{
countSize++;
//对其进行重建,
}
else
{
//对topo的附件进行名字设置
countSize++;
//对其进行重建,
}
}
}
}