0

OBJ-CでC#で作成したプログラムを作り直そうとしています。C#では、streamreaderを使用して、探している行のデータファイルを検索し、その行を操作可能な文字列に変換しました。

私はNSScannerを見てきましたが、それが私が探しているものであるかどうかはわかりませんが、私は決してカカオの専門家ではありません。

私ができるようにしたいのは、データファイルで文字列の出現を検索し、その文字列の出現が見つかった場合、その文字列が見つかった行を文字列として返すことだけです。

何か案は?

4

1 に答える 1

0

データ ファイルが大きすぎてメモリに収まらない場合は、それを文字列に読み込んで、文字列メソッドを使用して検索することができます。例えば:

NSData *data = [NSData dataWithContentsOfFile:@"/path/to/file.dat"];
NSString *dataString = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
for (NSString *line in [dataString componentsSeparatedByString:@"\n"])
    if (!NSEqualRanges([line rangeOfString:searchString], NSMakeRange(NSNotFound,0)))
        return line;
于 2010-04-09T22:35:45.863 に答える