"player.geo" を定義したカスタム ファイルから float 値を 1 つずつ読み取りたいとします。
player.geo は、Xcode 4 を使用して作成したファイルです ([ファイル] > [新規] メニューの [空のファイル])。
私は現在、次のようにしようとしています:
- (id) initWithGeometryFile:(NSString *) nameOfFile
{
NSFileHandle *geoFile = NULL;
NSString *geoFilePath = [[NSBundle mainBundle] pathForResource:@"player" ofType:@"geo"];
geoFile = [NSFileHandle fileHandleForReadingAtPath:geoFilePath];
if(geoFile == NULL)
{
NSLog(@"Failed to open file.");
}
else
{
NSLog(@"Opening %@ successful", nameOfFile);
NSMutableData *fileData = [[NSMutableData alloc] initWithData:[geoFile readDataOfLength:4]];
float firstValue;
[fileData getBytes:&firstValue length:sizeof(float)];
NSLog(@"First value in file %@ is %f", nameOfFile, firstValue);
}
return self;
}
-64.0 という期待値が得られず、むしろ 0.0 が得られます。
これは正しい方法ですか?
ファイルを文字列として読み取ってから、文字列の内容をフロート解析してフロート値を取得する必要がありますか?