我在下面使用此代碼複製在文件瀏覽器中選擇的文件,並將其複製到具有不同名稱的臨時目錄中。但是當我選擇一個包含空格的文件時,程序會拋出一個錯誤,說它找不到指定的精細路徑。我曾嘗試使用轉義方法,但它們也不起作用。有沒有其他的方式來處理空格的文件名?如何處理帶空格的文件名?
代碼從這裏開始:
[openPanel beginSheetModalForWindow:self.window completionHandler:^(NSInteger result) {
[openPanel close];
if (result == NSFileHandlingPanelOKButton) {
myString = [self randomStringWithLength:7];
NSString *filePath = [[[openPanel URLs] objectAtIndex:0] absoluteString];
NSLog(@"%@", filePath);
NSString *strTemp = [self extractString:filePath toLookFor:@"//" skipForwardX:2 toStopBefore:@".png"];
NSLog(@"%@",strTemp);
NSString *realThing = [strTemp stringByReplacingOccurrencesOfString:@"%20" withString:@"\\ "];
//strTemp = [strTemp stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"%@", realThing);
NSString* fullPath = [NSString stringWithFormat:@"/tmp/%@.png", myString];
NSLog(fullPath);
NSError *error = nil;
[[NSFileManager defaultManager] copyItemAtPath:realThing toPath:fullPath error:&error];
if(error) {
NSLog(@"Error!!!");
NSLog(@" error => %@ ",error);
}
else {
NSLog(@"Saved to temp directory");
}
任何人有這方面的經驗?謝謝
謝謝!鍛鍊了一種享受! – 2014-10-05 10:09:11