Xcode OSX - 如何从usb读取目录内容

Xcode OSX - How to read the content of a directory from usb

我需要制作一个 mac 应用程序,它将 运行 来自 USB device.The 应用程序是一个产品演示应用程序。我需要检查是否存在某个目录以定义我可以显示的产品类别。如果类别的目录没有退出,则不会显示该类别。然后我必须检查每个类别目录中的所有 jpg 文件并存储它们以便在用户 select 一个时显示它们。

我的问题是我不知道如何从 USB 设备访问文件。我想我可以像这样列出内容:

NSFileManager *fileManager = [[NSFIleManager alloc] init];
NSString *usbRootPath = [fileManager currentDirectoryPath];
// Reading the root content
NSArray *fileList = [fileManager contentAtDirectoryAtPath:usbRootPath error:NULL];
// Printing the content
for(int counter=0; counter < [fileList count]; counter++)
      NSLog(@"%@", [fileList objectAtIndex:counter]);

usbRootPath(在我构建应用程序并将其复制到 usb 之后)是“/”,内容列表包含来自系统驱动器的所有 directories/files。

我如何 read/verify 位于 USB 驱动器上的目录的文件 /directory/content(我的应用程序被复制到根目录中)。

任何帮助将不胜感激! 提前致谢!

所有安装的卷都可以在 /Volumes 中找到。如果您确定您的 USB 驱动器具有指定的名称,您可以在 /Volumes 中查找 "myUSBDriveName",然后从那里向下查找。

NSString *usbRootPath = [fileManager currentDirectoryPath];

此代码检索进程的当前工作目录。这与您的应用程序所在的目录不同;在大多数情况下,它将是系统根目录(如您所见)。 USB 设备的路径应采用 /Volumes/devicename.

格式

要找到您的应用程序的路径,请使用:

NSString *applicationPath = [[NSBundle mainBundle] bundlePath];

然后获取父目录(如果适用)并从那里开始工作。