可以啊
可以直接读取File,列出所有目录或文件,还可以对它们进行操作!

解决方案 »

  1.   

    1、找一下java有关ftp的类。
    2、或者当客户端连上服务端的时候,服务端自己将有关目录文件信息传送到客户端。
      

  2.   

    是啊,就像实现ftp服务一样。
      

  3.   

    通过ftp得到服务器目录结构。代码如下:import java.io.*;
    import java.net.InetAddress;
    import org.apache.commons.net.ftp.*;
    import org.apache.commons.net.ftp.parser.*;
    import org.apache.commons.net.ftp.FTPFile;
    import org.apache.commons.net.ftp.FTPFileEntryParser;import sun.net.TelnetInputStream;public class FtpAppache {
        public FtpAppache(){}    public void test1() throws Exception {
            //
            String strTemp = "";        //InetAddress ia = InetAddress.getByName("192.168.0.193");
            FTPClient ftp = new FTPClient();
            ftp.connect("192.168.0.193");        boolean blogin = ftp.login("myname", "mpaw");
            if (!blogin) {
                System.out.println("连接失败");
                ftp.disconnect();
                ftp = null;
                return;
            }        /*//如果是中文名必需进行字符集转换
            boolean bMakeFlag = ftp.makeDirectory(new String("测试目录".getBytes(
                "gb2312"), "iso-8859-1")); //在服务器创建目录
            //上传文件到服务器,目录自由创建
            File file = new File("c:\\test.properties");
            ftp.storeFile("test.properties",new FileInputStream(file));*/        System.out.println(ftp.getSystemName());        //取服务器目录
            FTPFile[] ftpFiles = ftp.listFiles();
            if (ftpFiles != null) {
                for (int i = 0; i < ftpFiles.length; i++) {
                    System.out.println(ftpFiles[i].getName());
                    //System.out.println(ftpFiles[i].isFile());
                    if (ftpFiles[i].isFile()) {
                        FTPFile ftpf = new FTPFile();                                }
                    //System.out.println(ftpFiles[i].getUser());
                }
            }        //下载服务器文件
            FileOutputStream fos = new FileOutputStream("e:/proftpd-1.2.10.tar.gz");
            ftp.retrieveFile("proftpd-1.2.10.tar.gz",fos);
            fos.close();        //改变ftp目录
            //ftp.changeToParentDirectory();//回到父目录
            //ftp.changeWorkingDirectory("");//转移工作目录
            //ftp.completePendingCommand();//        //删除ftp服务器文件
            //ftp.deleteFile("");        //注销当前用户,
            //ftp.logout();
            //ftp.structureMount("");
            ftp.disconnect();
            ftp = null;
        }    public static void main(String[] args) {
            try {
                FtpAppache ftpAppache1 = new FtpAppache();
                ftpAppache1.test1();
            }
            catch (Exception e) {
                e.printStackTrace();
            }
        }}
      

  4.   

    兄弟﹐謝謝﹗
    等我想好了怎么讓它顯示在swing界面上后再結分。
    兄弟們﹐新年快到啦﹗
    在此給您拜年來了,祝新的一年:開開心心快快樂樂 步步高升 年年有余!
    金雞年下金元寶讓好過年
      

  5.   

    兄弟﹐我對FTP的用法了解甚少﹐
    不知道FTP服務端是不是也像Socket服務端那樣需另編代碼且也要監聽?