我正在處理一個NSData
對象,它是4840字節,並且想要省略前20個字節並獲取其餘部分。子字符串方法substringFromIndex:
/substringToIndex:
是否適用於NSData
?使用substringFromIndex:與NSData
2
A
回答
5
你靠近,NSData
有一個方法subdataWithRange:
。您可以使用功能NSMakeRange
製作一個範圍,然後使用該範圍生成一個NSData
修剪。
一個例子:
// Create NSData
NSString* myString = @"Lorem ipsum dolor sit amet, consectetur cras amet.";
NSData* myData = [myString dataUsingEncoding:NSUTF8StringEncoding];
if (myData != nil && myData.length > 20) {
// Create trimmed NSData
NSData* newData = [myData subdataWithRange:NSMakeRange(20, myData.length - 20)];
if (newData != nil) {
// Test
NSString* newString = [[NSString alloc] initWithData: newData
encoding: NSUTF8StringEncoding];
NSLog(@"%@", newString);
// -> "t amet, consectetur cras amet."
}
}
3
閱讀NSData
的文檔,有一種方法可以讓你指定一個字節範圍:-getBytes:range:
。使用NSMakeRange()
來設置範圍。
2
- (NSData *)subdataWithRange:(NSRange)range;
+1
即不是委託方法。 –
相關問題
- 1. NSData subStringFromIndex:等效
- 2. substringFromIndex in swift 3
- 3. NSData與NSString與åöä
- 4. NSURLConnection與NSData + GCD
- 5. NSData與歸檔
- 6. NSData與百分比NSData比較
- 7. 有效使用NSData
- 8. 緩存NSData(與UIImages)
- 9. Iphone與NSData分配
- 10. iPhone - substringToIndex/substringFromIndex/substringWithRange內存泄露
- 11. 使用SBJSON的NSData或NSAttributedString
- 12. NSData使用NSURLConnection的HTML NSString
- 13. 使用NSData解析xml
- 14. 使用GTMNSData + zlib卸載NSData
- 15. 使用ZipArchive解壓縮NSData
- 16. 如何使用zlib gzip NSData?
- 17. NSData指針與參考
- 18. 與NSData的圖像比較
- 19. NSString與NSData的HTML代碼
- 20. HTTP POST與NSData的initWithContentsOfURL
- 21. NSString與NSData的字節?
- 22. 使用結構(字節)和SWIFT - 結構到NSData和NSData結構
- 23. NSData - > UIImage - > NSData?
- 24. nsdata到nsstring到nsdata
- 25. NSData的NSArray的NSData?
- 26. NSData - > UIImage - > NSData
- 27. CKAsset(NSData)與UIWebView共享與ActivityViewController
- 28. 新的NSData與舊的NSData維護字節範圍
- 29. 如何與AFNetworking 3發送的NSData不使用AFMultipartFormData
- 30. 當使用NSData與NSMutableData時內存中的不同值
尋找一個完整的例子,但這是有幫助的 – circuitry
NSData * d1 = [myData subdataWithRange:NSMakeRange(0,20)]; – circuitry
@circuitry我添加了一個完整的例子來說明如何使用'subdataWithRange:' – ColGraff