1
編碼的NSString成NSInputStream後改變我試圖編碼時遇到下述問題的NSString
作爲NSString
- >NSData
- >NSInputStream
然後從NSInputStream
與read
方法進行解碼:字節通過NSData的
NSString *inputString = [NSString stringWithFormat:@"%c", 255];
NSData *data = [inputString dataUsingEncoding:NSUTF8StringEncoding];
NSInputStream *stream = [NSInputStream inputStreamWithData:data];
[stream open];
uint8_t bytes;
[stream read:&bytes maxLength:1];
NSLog(@"%i", bytes);
輸出是195
而不是255
。爲什麼?
TIL,感謝您的解釋!這是我的單元測試的一部分,我期待着類似'XCTAssertEqual((int)bytes,255);'。 – yvetterowe
沒問題。聽起來可能這只是一個無益的測試。祝你好運。 –