検索

ホームページ  >  に質問  >  本文

objective-c - OS X下拖拉文件如何获取文件路径

拖拉文件获取文件路径

// (id <NSDraggingInfo>)sender
NSURL *fileURL=[NSURL URLFromPasteboard: [sender draggingPasteboard]];

获取URL,打印2016-08-01 17:11:21.201 DragAndDrop[3504:170407] file:///.file/id=6571367.14796550。而不是如/Users/jolie/Downloads格式的文件路径。

迷茫迷茫2757日前531

全員に返信(1)返信します

  • 阿神

    阿神2017-05-02 09:30:28

    リーリー

    問題の反省: この問題にはまだ時間がかかりました。 NSImage は Pasteboard から初期化することもできるので、fileName は文字列であるため、Pasteboard から取得することにしました。 NSString を Pasteboard 経由で初期化したいのですが、Apple API からは NSString が NSPasteboardWriting および NSPasteboardReading プロトコルに従っていることがわかりますが、関連するインターフェイスは提供されていません。
    しかし、github から取得したプロジェクトでは、NSURL がファイル パスを取得するためのパスを提供していることがわかりました。問題にこれほど時間がかかったのは、私が NSURL API に慣れていないからとしか言いようがありません。

    返事
    0
  • キャンセル返事