ページ 11

[Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月11日(金) 12:52
by matunon
現在、FTPサーバ上のファイルの更新日時を利用してファイルをダウンロードするかしないか決めるという一連の流れを作成しようとしています。
最初のうちはダウンロードし、ローカルに保存したものからNSFileManagerを使用して更新日時を取得すればいいやと思っていたのですが、Macではダウンロードが確定した瞬間に現在日時に上書きされる事を知り諦めました。
なので現在ファイルダウンロードの部分で使用しているCFFTPStreamの中に良さげなものはないかと探っていたところkCFFTPResourceModDateという項目をリファレンスから見つけました。
ですが使いどころが分かりません。
kCFFTPResourceModDateを使用して更新日時を取得するまでの流れを教えていただきたいです。
またリファレンスに載っているのであればどのリファレンスのどの部分か教えていただけるとありがたいです。
俺ならこうするという独自のやり方を教えていただける方も大募集です。

前提として、FTPサーバにはUserName,Passwordを設定せねばならず、モードはアクティブFTP通信です。

相互リンク http://detail.chiebukuro.yahoo.co.jp/qa ... 1131732476

Re: [Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月11日(金) 13:16
by h2so5

Re: [Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月11日(金) 13:18
by matunon
h2so5 さんが書きました:サンプルコード: https://code.google.com/p/maccode/sourc ... er.m?r=237
ありがとうございます。
最終的なコードが出来次第のせて解決済みにします。

Re: [Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月11日(金) 13:37
by matunon
h2so5 さんが書きました:サンプルコード: https://code.google.com/p/maccode/sourc ... er.m?r=237
このサンプルコードを参考にして、更新日時の取得を考えるとすると
1、FTPサーバ上のファイルのデータをCFDictionaryに追加
2、CFNumberRef変数を作成
3、2、で作成した変数にCFDictionaryGetValueメソッドを使って辞書から更新日時を取得
4、その後、CFTime変数なり、CFDate変数なりを作成し、値を代入して使う

という流れで良いのでしょうか?

Re: [Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月11日(金) 15:07
by matunon
h2so5 さんが書きました:サンプルコード: https://code.google.com/p/maccode/sourc ... er.m?r=237
► スポイラーを表示
このサンプルコードで言えばコメントしてある部分が私の欲しい情報だとは思うのですが、そもそもdictionaryがどこに定義されていて、この関数がどこから呼び出されているのかが分からないです。
CFDictionaryとFTP通信がどこかでつながっていないとgetValueしても返ってくるのはNULLだと思いますし・・・・。
他の.m.hファイルをみてもこのクラスをインポートしているファイルが見つからなかったのでお手上げ状態です。
このサンプルコード上のどこでCFdictionaryに値を入れているのでしょうか?
どうか教えてください。お願いします。

Re: [Objective-C]FTPサーバ上のファイルの更新日時の取得について

Posted: 2014年7月14日(月) 17:06
by matunon
なんとか頑張ってみた結果うまくいきましたのでコードをのせます
► スポイラーを表示
できたので良かったです。