现在想用java开发一个上传文件至FTP的程序,
遇到一个问题,上传的中途被别人下载了是不可以的。
所以我想到的解决方案是上传时带一个后缀名,上传结束后再重命名。但同事提出了一个方案,就是将文件上传一直文件夹下,这个文件夹可以用作备份,
上传完成后,做一个这个文件的Link到工作目录,供别人下载。请问这种方案怎么实现啊?这个Link怎么搞。

解决方案 »

  1.   

    是linux操作系统的文件link,win好像不行。
    据说很简单,调用一个方法就行了,应该是File类的一个方法,
    但是linux没用过,不知道是什么东西。
    谁给解答解答。
      

  2.   

    加一个判断就可以了
    public static boolean isLink(File file)
      {
        try {
          if (!file.exists())
    return true;
          else
    {
      String cnnpath = file.getCanonicalPath();
      String abspath = file.getAbsolutePath();
      return !abspath.equals(cnnpath);
    }
        }
        catch(IOException ex) {
          System.err.println(ex);
          return true;
        }
      }
      

  3.   

    Link不可以直接写吗?得到你的绝对路径然后不就有了吗?
    ftp://ftp.xx/upload/01.FTPClient client = new FTPClient();
    02.FileInputStream fis = null;
    03. 
    04.try {
    05. 
    06.    client.connect("ftp.site.com");
    07.    client.login("user", "pwd");
    08.     
    09.    String filename = "my_file.txt";
    10.    fis = new FileInputStream(filename);
    11.     
    12.    client.storeFile(filename, fis);
    13.    client.logout();
    14. 
    15.} catch (IOException e) {
    16.    e.printStackTrace();
    17.} finally {
    18.    try {
    19.        if (fis != null) {
    20.            fis.close();
    21.        }
    22.        client.disconnect();
    23.    } catch (IOException e) {
    24.        e.printStackTrace();
    25.    }
    26.}