【发布时间】:2011-03-04 13:43:12
【问题描述】:
我正在将图像的 NSData 从数据库转换为 Iphone 中的 NSString
这是我的代码
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为nil
关于这个问题:我不能从数据库中的任意二进制数据中创建一个 UTF-8 编码的字符串——数据实际上需要是 UTF-8 编码的。我还完成了 base 64 编码和解码。我该如何解决这个问题。我只需要 NSString 格式的它作为 csv 文件的输入吗?
【问题讨论】:
-
base64StringFromData 和 base64DataFromString 是什么?我在 Apple SDK 中找不到它们。它们是你写的函数吗?
-
我从cocoawithlove.com/2009/06/… 链接获得
-
我明白了 - 谢谢!当您说“将其作为 csv 文件的输入”时,您的意思是您希望将图像数据嵌入到 CSV 文件本身的字段中吗?
-
如果我在开放式办公室中打开 csv 文件,我应该会在一列上看到图像
-
我不相信 CSV 文件类型支持这一点。我担心您可能需要实际导出 Excel 文件才能看到单元格内的解码图像....