いろいろ備忘録日記

主に .NET と Python絡みのメモを公開しています。

JavaでFTP-0001

Javaの標準APIにはFTPに特化したクラス等がありません。
標準APIだけを使用してFTPサーバとやりとりするには
ソケットを用いてコマンドを発行したりします。
でも、JakartaのCommonsにNetというのがありますので、
これを使用するのが一番手っ取り早いです。

Netの中には、FTPの他POPやTELNET等もあります。
FTPを操作する際に使用するクラスは

org.apache.commons.net.ftp.FTPClient

です。まんまですが・・

以下、使い方のメモです。
なお、使用したCommons Netのバージョンは1.3.0です。

(1) サーバーに接続

	FTPClient ftp = new FTPClient();

	ftp.connect("ホスト", ポート番号);

です。接続する際のソケットの作成などはFTPClient内部で
うまくやってくれます。
また、応答コードなどは以下のメソッドで取得できます。

	int    replyCode   = ftp.getReplyCode();
	String replyString = ftp.getReplyString();

取得した応答コードが正常なものなのか、異常なものなのか
はorg.apache.commons.net.ftp.FTPReplyクラスの
クラスメソッドisPositiveCompletionで判断できます。

	if(!FTPReply.isPositiveCompletion(replyCode)){
		// 異常な応答コード
	}

基本な処理の仕方としては

	コマンドを発行
		↓
	応答コードを取得
		↓
	確認

の流れを繰り返す事になります。



================================
過去の記事については、以下のページからご参照下さい。