固定長データ
Posted feedbacks - Objective-C
開発環境: Mac OS X 10.5.2 Xcode 3.1 (Beta)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #import <Foundation/Foundation.h>
#define FilePath @"fixedlengthdata.txt"
const unsigned int RecordSize = 12 + 12 + 1 + 3 + 4 + 2 + 31 * 1502;
const unsigned int RecordCount = 500;
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSData* data = [NSData dataWithContentsOfMappedFile:FilePath];
if ( data ) {
NSMutableArray* array = [NSMutableArray array];
for ( int i = 0; i < RecordCount; i++ )
[array addObject:[data subdataWithRange:NSMakeRange( i * RecordSize, RecordSize )]];
}
[pool drain];
return 0;
}
|

Mymelo #6060() Rating5/7=0.71
固定長のデータが記載されたファイルを読み込むプログラムを作成してください。読み込んだデータは、複数の値を格納できるデータ型に格納してください。
ファイルには、すべて ascii 文字で以下のデータが格納されています。デリミタはなく、固定長で格納されています。レコードとレコードのあいだも改行はありません。
以上の形式のデータ500人分を読みこんで、データを複数の値を格納できるデータ型に格納してください。データに大して何か処理を行う必要はなく、すぐに破棄してかまいません。
この問題は、このようなファイルをどのように扱うかを知りたくて作成しました。
[ reply ]