用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 程序开发教程 > JAVA教程 > JAVA实例教程 > 文章正文
用Java实现FTP服务器
iTbulo.COM 2006-6-6 佚名()
FTP 命令

   FTP 的主要操作都是基于各种命令基础之上的。常用的命令有:

   ◆ 设置传输模式,它包括ASCⅡ(文本) 和BINARY 二进制模式;


   ◆ 目录操作,改变或显示远程计算机的当前目录(cd、dir/ls 命令);

   ◆ 连接操作,open命令用于建立同远程计算机的连接;close命令用于关闭连接;

   ◆ 发送操作,put命令用于传送文件到远程计算机;mput 命令用于传送多个文件到远程计算机;

   ◆ 获取操作,get命令用于接收一个文件;mget命令用于接收多个文件。

   编程思路

   根据FTP 的工作原理,在主函数中建立一个服务器套接字端口,等待客户端请求,一旦客户端请求被接受,服务器程序就建立一个服务器分线程,处理客户端的命令。如果客户端需要和服务器端进行文件的传输,则建立一个新的套接字连接来完成文件的操作。

   编程技巧说明

   1.主函数设计

   在主函数中,完成服务器端口的侦听和服务线程的创建。我们利用一个静态字符串变量initDir 来保存服务器线程运行时所在的工作目录。服务器的初始工作目录是由程序运行时用户输入的,缺省为C盘的根目录。

   具体的代码如下:

public class ftpServer extends Thread{
private Socket socketClient;
private int counter;
private static String initDir;
public static void main(String[] args){
if(args.length != 0) {
initDir = args[0];
}else{ initDir = "c:";}
int i = 1;
try{
System.out.println("ftp server started!");
//监听21号端口
ServerSocket s = new ServerSocket(21);
for(;;){
//接受客户端请求
Socket incoming = s.accept();
//创建服务线程
new ftpServer(incoming,i).start();
i++;
}
}catch(Exception e){}
}
2. 线程类的设计

   线程类的主要设计都是在run()方法中实现。用run()方法得到客户端的套接字信息,根据套接字得到输入流和输出流,向客户端发送欢迎信息。

[1] [2] [3] [4] [5] 下一页

文章搜索
相关资讯
相关文章 相关下载
关于Servlet、Jsp中的多国语言显示
触摸Java编程中的“文档”和“包”
用Java设计下载软件
java文件操作大全
避免Java EE项目评估中的常见错误
焦点信息