cuốn sách gpt4 ai đã làm

objective-c - 如何将经典的 HFS 路径转换为 POSIX 路径

In lại Tác giả: Walker 123 更新时间:2023-11-28 11:35:58 hai mươi bốn 4
mua khóa gpt4 Nike

我正在阅读仍然使用 HFS 样式路径的旧文件,例如 VolumeName:Folder:File.

我需要将它们转换成 POSIX 路径。

我不喜欢进行字符串替换,因为它有点棘手,我也不想为此任务调用 AppleScript 或 Shell 操作。

是否有框架功能来完成这个?弃用不是问题。

顺便说一句,这是一个solution for the inverse operation .

câu trả lời hay nhất

Obj-C 和 Swift 中的解决方案作为 NSString/String 的类别/扩展。不可用的 kCFURLHFSPathStyle 样式以与链接问题中相同的方式规避。

Objective-C

@implementation NSString (POSIX_HFS)

- (NSString *)POSIXPathFromHFSPath
{
NSString *posixPath = nil;
CFURLRef fileURL = CFURLCreateWithFileSystemPath(kCFAllocatorDefault, (CFStringRef)self, 1, [self hasSuffix:@":"]); // kCFURLHFSPathStyle
if (fileURL) {
posixPath = [(__bridge NSURL*)fileURL path];
CFRelease(fileURL);
}

return posixPath;
}

@kết thúc

swift

extension String {

func posixPathFromHFSPath() -> String?
{
guard let fileURL = CFURLCreateWithFileSystemPath(kCFAllocatorDefault,
self as CFString?,
CFURLPathStyle(rawValue:1)!,
self.hasSuffix(":")) else { return nil }
return (fileURL as URL).path
}
}

关于objective-c - 如何将经典的 HFS 路径转换为 POSIX 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55383444/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress