- - PR -
FTPClientでのログ取得方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-04-05 10:23
こんにちは。2点質問させてください。
1点目: FTPClient処理を行った場合に、実際に発行されるFTPコマンドをログとして残したいのですが、ログを取得する方法はあるでしょうか? 2点目: バイナリモードでファイルを転送するには以下のコマンド合っているでしょうか? FTPClient ftp; ftp.setFileType(FTPClient.IMAGE_FILE_TYPE); setFileTransferMode()を使用するような気がするのですが該当する定数が切られていませんでした。 ※参照URLを参考ください | ||||
|
投稿日時: 2007-04-05 10:35
何のライブラリの話ですか?
apache commonsでしょうか? | ||||
|
投稿日時: 2007-04-05 13:21
>nagiseさん
はい。Apache Commonsになります。 パッケージは以下になります。 org.apache.commons.net.ftp.FTPClient Apache Commons net http://jakarta.apache.org/commons/net/ | ||||
|
投稿日時: 2007-04-11 18:27
1点目ですが、言葉で説明するのが面倒だったのでサンプルコード置いておきますね。
いい方法かはわかりませんが、こんな感じで行けるかと思います。
2点目はおっしゃる手順でバイナリーモードになります。 余談ですが、FTPClient.BINARY_FILE_TYPE を渡してもいいみたいですね。 | ||||
|
投稿日時: 2007-04-11 20:35
うっかりしていましたが、さっきのサンプルコードはコマンド以外のデータ部分も出力しちゃうかもしれませんね。
今は環境がないので、直ぐには検証できませんが・・。 # 碌に検証もしないで、サンプルなんて投稿するもんじゃないですね・・。orz | ||||
|
投稿日時: 2007-04-12 14:14
時間ができたので、サンプルコードの検証をしたところ、データ部分はログに出力されずに上手くいっていました。
サンプルコードでオーバーライドしている getOutputStream() は FTPClient 祖父クラス(?)である TelnetClient で定義されているもので、データ部分のソケットは FTPClient 自身でオープンしていました。 # よかったぁ。 # ってか、反応無いところを見ると、スレ主はすでに解決している予感・・・。 | ||||
|
投稿日時: 2007-04-12 16:00
>でゅうく氏
情報ありがとうございます。 参考になります。 こういった調査は労力がかかりますので情報提供がとても有難いです。 あしがかりになりますので出せるサンプルは検証の程度によらず 有難いものですよ。 | ||||
|
投稿日時: 2007-04-27 11:31
でゅうくさん
返答遅れてすいません。回答頂いたことに気付きませんでしたm(_ _)m サンプルコードのご提供、ありがとうございます! こちらを参考に実装したいと思います。 |
1