IIS7批量FTP管理功能说明:
1、可批量导入,导出FTP信息
2、其他ftp工具有的功能,我们也有
3、特色功能:可以定时上传下载
4、数据信息列表化、一眼就能知道那个是那个
5、批量连接标签页式切换方便快捷
6、7大连接模式更多好的兼容
7、内嵌编辑器有效解决普通txt记事本乱码
8、锁屏功能当程序有规定时间内没人操作,则自动锁程序。输入密码才可以正常操作
本产品适用于:懒得记录FTP信息和有批量定时备份,上传下载的运维或站长。
图片:
相信大家在使用ftp上传文件的时候,都是先创建了文件,然后再上传。如果出现程序读取文件不完全,出现只读取一部分不完成的数据时,这类的问题该如何解决呢?
第一种方法:在上传文件之前,创建一个临时文件名称保存在客户端,在上传完毕再重命名。而重命名是修改注册表所以不会产生过程中数据不一致的问题。
第二种方法:把文件打开,并在文件尾追加一个标识内容。然后关掉文件,再重新打开文件,确定多写入的内容是否成功,如果不成功,说明文件还在被占用,如果成功了就说明ftp上传结束了。
最后说明一下,在使用ftp客户端上传文件的时候,无法在文件上追加更多的内容,而且java代码不报错,才会有第二种方法。
java代码如下:
package com.ehl.tvc.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import org.apache.commons.io.IOUtils;
public class FileUtil {
private static String endTag = "end";
/**
* 判断文件是否写入内容完毕,如果完毕返回true,反之false
* @param f
* @return
*/
public static boolean checkIniTransfered(File f){
OutputStream output = null;
try {
output = new FileOutputStream(f, true);
output.write((endTag+"\n").getBytes());
output.flush();
output.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
IOUtils.closeQuietly(output);
}
InputStream input =null;
try {
input = new FileInputStream(f);
List<String> list = IOUtils.readLines(input);
if(list.size()>0){
String endstr =list.get(list.size()-1);
if(endTag.equals(endstr)){
return true;
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
IOUtils.closeQuietly(input);
}
return false;
}
}