2
我正在存儲大小超過1 GB的視頻文件並存儲到homeDirectory中。 我想要轉換成NSData對象如下將大數據轉換爲NSData
NSData * videoData = [[NSData alloc] initWithContentsOfFile:filePath];
但我在這裏得到的視頻數據爲零。 當我嘗試500 MB的視頻時,它工作正常。
轉換成NSData時大小是否有限制?
我正在存儲大小超過1 GB的視頻文件並存儲到homeDirectory中。 我想要轉換成NSData對象如下將大數據轉換爲NSData
NSData * videoData = [[NSData alloc] initWithContentsOfFile:filePath];
但我在這裏得到的視頻數據爲零。 當我嘗試500 MB的視頻時,它工作正常。
轉換成NSData時大小是否有限制?
嘗試使用這個(需要iOS 5.0或更高版本):
NSError *error = nil;
NSData *data = [[NSData alloc] initWithContentsOfFile:filePath
options:NSDataReadingMappedIfSafe
error:&error];
此前的iOS 5.0可以使用:
NSData *data = [[NSData alloc] initWithContentsOfMappedFile:filePath];
這些將文件映射到虛擬內存,如果它是安全的,這將顯着減少整體使用的內存量。
非常感謝。現在它工作正常。 :) – Sujit
@dreamlax你可以複製這個與斯威夫特? – user2363025