我有一个 importFile 存储在 NSString* importFile (用 NSLog %@ 打印):
/var/mobile/Applications/5CE1D252-E56A-4AAC-B88E-5B0CEFFF55B3/Library/Caches/tmp/temp_695D39E3-3359-415F-9C0D-243E2E117B8B-456-0000001384C17BBA.tmpfile
然后我收到一个destinationFile NSString *destinationFile 的值(用NSLog %@ 打印)
/var/mobile/Applications/5CE1D252-E56A-4AAC-B88E-5B0CEFFF55B3/Documents/Str%208829%20-%20Test.500887280
然后我使用 NSFileManager 移动文件:
NSFileManager* fileManager = [NSFileManager defaultManager];
assert(fileManager != nil);
NSError* error = nil;
[fileManager moveItemAtPath:importFile toPath:destinationFile error:&error];
问题是移动后的实际文件名与请求的destinationFile不同:
Str%25208829%2520-%2520Test.500887280
这里发生了什么 ?那些额外的三个 25 似乎有什么区别?