トップ «前の日記(2007-12-23) 最新 次の日記(2007-12-25)» 編集

jFD開発したりしなかったり日誌

2004|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|
2007年
12月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

2007-12-24 [長年日記]

_ jFD2

FTPではまる。

実はFileFishがマルチバイト文字のファイル名のファイル転送をきちんと

サポートしてなかったので、心を入れ替えてまじめに実装を始めた。

FileFishのFTPはCommon Netを使用しているのだが、これの

FTPClient#setControleEncoding()(だったっけ?)でエンコードを指定するだけかと

思ったが、なぜかうまくいかない。

よくわからん。

あと、現在のFTPは効率が悪い実装になっていて、ディレクトリ移動で余計な

FTP処理が行われていたのを何とかする。

FileFishのFTPはCommons VFSを参考にしたのだが、ファイルの属性やパーミッションの取得は、

ファイルの親ディレクトリのファイル一覧を取得して、その中に知りたいファイルがあれば

その属性やパーミッションを返すようになっている(またはディレクトリのファイル一覧取得時に

まとめて取得してキャッシュしてる)。

jFD2の画面ではカレントディレクトリと親ディレクトリが表示されているが、

もしもファイルリスト取得時にカレントディレクトリと親ディレクトリも取得されるタイプの

FTPサーバーではない場合、カレントディレクトリのほかに親ディレクトリ、その親ディレクトリの

ファイル一覧が取得されてしまう。

これはいけてないので、画面のファイルのレンダラをいじって、リモートのカレントディレクトリと

親ディレクトリは属性取得を行わないようにしようかと思う。

かなり動作は軽くなるだろう。