В качестве примера я хочу записать некоторое строковое значение, str
, в файл, "yy"
, так как оно меняется на каждой итерации цикла. Ниже показано, как я сейчас это реализую:
NSOutputStream *oStream = [[NSOutputStream alloc] initToFileAtPath:@"yy" append:NO];
[oStream open];
while ( ... )
{
NSString *str = /* has already been set up */
NSData *strData = [str dataUsingEncoding:NSUTF8StringEncoding];
[oStream write:r(uint8_t *)[strData bytes] maxLength:[strData length]];
...
}
[oStream close];
Не обращая внимания на кодировку UTF-8, которая мне действительно нужна, это как обычно NSString
s записывается в файл? То есть, сначала преобразовав объект NSData
, затем используя bytes
и приведя результат к uint8_t
для NSOutputStream
'write
?
Существуют ли альтернативы, которые используются чаще?
РЕДАКТИРОВАТЬ: Несколько NSString
должны быть добавлены к одному и тому же файлу, следовательно, цикл выше.