Конвертировать NSData изображения из базы данных в NSString в iPhone - PullRequest
0 голосов
/ 04 марта 2011

Я преобразую NSData изображения из базы данных в NSString в Iphone

Вот мой код

imageData1 = [[NSData alloc] initWithBytes:sqlite3_column_blob(compiledStatement, 3) length: sqlite3_column_bytes(compiledStatement, 3)];           
NSString * Str1 = [NSString base64StringFromData: imageData1 length: [imageData1 length]];
NSData *data1=[NSData base64DataFromString:Str1];
NSString* newStr1 = [[NSString alloc] initWithData:data1 encoding:NSUTF8StringEncoding];

длина данных - 6511, но newstr1 - ноль

Со ссылкой на этот вопрос: я не могу создать строку в кодировке UTF-8 из каких-либо произвольных двоичных данных из базы данных - эти данные должны быть действительно в кодировке UTF-8. Я также сделал base 64 кодирования и декодирования. Как я могу решить эту проблему. Мне нужно только в формате NSString, чтобы дать его в качестве ввода в CSV-файл?

1 Ответ

0 голосов
/ 04 марта 2011

У меня нет достаточных знаний о кодировке символов, но не будет ли достаточно просто использовать закодированную строку Base 64 (Str1) в своем выводе?

Боюсь, что перекодировка Str1 в качестве data1возвращает вас обратно к квадрату 1 и отменяет любую кодировку Base 64, выполненную в строке ранее.

...