1
私はObjective-CでInputStreamを扱っており、受信したデータの処理に間違ったステップを踏んだようです。InputStreamデータを別のデータ型に変換する
私が読んで、データ型に変換されるバイトのチャンク、整数として、山車、ダブルスなどを受け付けております
これまでのところ、私のプロセスは、このようなものです:
今readBuffer = (uint8_t *) malloc(4);
memset(readBuffer, 0, 4);
while (length < byteLength) {
length = [InputStream read:readBuffer 4];
}
[something fourByteUint8ToLong:readBuffer];
へ順にいくつかは4バイトから長時間に変換する
- (long) fourByteUint8ToLong:(uint8_t *) buffer
{
long temp = 0;
temp |= buffer[0] & 0xFF;
temp <<= 8;
temp |= buffer[1] & 0xFF;
temp <<= 8;
temp |= buffer[2] & 0xFF;
temp <<= 8;
temp |= buffer[3] & 0xFF;
return temp;
}
objective-Cクラスを使用してこれを処理する簡単な方法はありませんか?
その場合はどうすればよいですか? 8バイト→ダブル、4バイト→フロート
ありがとうございます。 CoreFoundation.h
クラスの機能を使用することによって解決