易截截图软件、单文件、免安装、纯绿色、仅160KB

java实现FTP远程文件移动(重命名、复制、拷贝)

首先就标题说明一点,java使用org.apache.commons.net.ftp.ftpclient包来操作FTP是很爽滴,但对远程文件操作,好像没有实现
复制文件的方法。我用的是文件移动(move),把文件从一个文件夹移动到另外一个文件夹。
背景:
     在action中操作远程FTP,实现文件移动。程序运行在本机,FTP是一个Linux服务器。
实现:
     
      登录FTP并生成一个FTPClient对象如 fc,用方法rename(String1,String2)如下:
     
      fc.rename(file.getName(), "../ScheduleList/"+file.getName());
说明:
     把FTP上当前工作目录下的文件(file.getName()),移动到与当前目录平级的另一目录ScheduleList下。
     如果你只是想更改名称,那就写成fc.rename(file.getName(), "newName");
     移动文件只是在新文件名前加上路径,我设置了当前工作目录,所以这里用的是相对路径。
注意:
     
       action操作FTP时一定要注意中文编码问题,在action中显示为正常汉字的,用rename不一定正确。
       我的文件名是用FTPFile的getName获得的,在action中是乱码,所以用UTF-8转了一次,但是把转过码显示正常的文件名放在
 rename方法中就不对了,方法识别不了,rename不成功。包括你使用changeWorkingDirectory("path")更改工作目录时也一样,带汉字的字符串必须转码之后再作为参数。当然,这个时候你会发现你看到的参数是一些乱码,但是这些方法却能用。也就是说,你把从FTP上得到的东西转成正常显示的汉字了,但当你放参数给FTP方法时,又必须把它们转换回原来的编码。


相关文档:

java写的一个死锁例子

public class DeadLock {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
final Object resource1 = "resource1";
final Object resource2 = "resource2";

Thread t1 = new Thread(){
public void run(){
syn ......

Java中的“==”和equal()

Integer n1 = new Integer(1);
Integer n2 = new Integer(1);
System.out.println(n1==n2); // false
Integer n1 = new Integer(3);
Integer n2 = new Integer(3);
System.out.println(n1.equals(n2)); //true

equals()默认也是比较reference,但是Java中的class覆盖了equals()方法 ......

传智播客java学习 教育办公系统4

今天继续教育办公系统的旅程,今天主要讲的是权限模块:
      
1. 集成 spring-security 框架
      
1). 加入 spring-security 的两个 jar 包
      
2). 在 web.xml 文件中加入加入 spring-security 框架的过滤器
&n ......

传智播客java学习 教育办公系统5

今天继续学习佟老师的教育办公系统的旅程,今天主要学习权限模块和员工模块的集成;
      
      
1.
集成权限模块和员工模块
.
      
1).
新录入员工时
,
可以为其添加角色
     &n ......

传智播客java学习 3g手机开发Android 3

今天是学习
Android
的第三天,今天主要学了
Android
内置的
SQLite
数据库,学习了增删改查。
 
      
SharedPreferences
进行数据存储
:
      
Android
平台给我们提供了一个
SharedPreferences
类,它是一个轻量级的存储类,特别适 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号