찾다

 >  Q&A  >  본문

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일 전529

모든 응답(1)나는 대답할 것이다

  • 阿神

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

    으아아아

    문제에 대한 고찰: 이 문제는 여전히 많은 시간이 걸렸습니다. 처음에는 Pasteboard에서 NSURL을 가져오는 것이었어요. NSImage는 Pasteboard를 통해서도 초기화할 수 있으므로 fileName이 문자열 유형이므로 fileName을 가져오고 싶었습니다. , NSString을 얻고 Pasteboard를 통해 초기화하려고 생각했지만 찾을 수 없었습니다. Apple API에서 NSString이 NSPasteboardWriting 및 NSPasteboardReading 프로토콜을 따르지만 관련 인터페이스를 제공하지 않는 것을 볼 수 있습니다.
    그러나 github에서 가져온 프로젝트는 문제에 대한 답이 매우 간단하다는 것을 발견했습니다. NSURL은 파일 경로를 얻을 수 있는 경로를 제공합니다. 문제가 이렇게 오래 걸린 이유는 제가 NSURL API에 익숙하지 않기 때문이라고 밖에 할 수 없습니다.

    회신하다
    0
  • 취소회신하다