-3
  1. 如何从 Objective-C 中的读取流中读取数据?下面的代码会给我从流中读取多少字节,但我怎么知道从流中读取了哪些数据?

    CFIndex cf = CFReadStreameRead(Stream, buffer, length);
    
  2. 如何在 Objective-C 中仅提取读取流中的第一个 2 字节数据?例如,如果这是来自流的数据:

    017MacApp
    

    第一个字节有 0,第二个字节有 17。

    如何将 0 和 17 提取到字节数组中?

我知道下面的代码会将字节数组返回给 int 值。

((b[0] & 0xFF) << 8)+ (b[1] & 0xFF);

但是如何将 0 放入 b[0] 并将 17 放入 b[1]?

4

1 回答 1

0
uint8_t buffer[2];
CFIndex cf = CFReadStreamRead(Stream, buffer, 2);
if (cf == 2)
{
    uint8_t firstByte = buffer[0];
    uint8_t secondByte = buffer[1];
}
else
{
    // cf == -1 => error, cf == 0 => end of file, cf == 1 => you need to call again to get the second byte
}

这是苹果文档

于 2010-04-23T16:05:06.223 回答