如何在ipad应用程序中解码base64编码的图像文件?

时间:2010-11-02 05:20:55

标签: image ipad file base64 decode

我正在做一个ipad aplication aplication发送扫描的照片和签名图像工作正常,但下载它们我有一个问题,在服务器端他们将图像文件编码为基础64,但我没有得到如何解码客户端的图像文件。

谢谢,

Kumar Y R

1 个答案:

答案 0 :(得分:0)

来自此帖子http://www.cocoabob.net/?p=7

  

我使用base64编码器和解码器   将图像的二进制数据放入xml中   数据,然后传输非文本数据   作为服务器和之间的文本数据   客户端。

     

这是我iPhone中的一个例子   项目

     

base64.zip

     

下载这两个文件并导入   他们在你的项目中并包括   头类文件中的头文件。

     

(感谢Jonathan Wight,他写道   它于2003年3月18日)

     

base64有四种方法   头文件。

extern size_t EstimateBas64EncodedDataSize(size_t inDataSize);
extern size_t EstimateBas64DecodedDataSize(size_t inDataSize);
extern bool Base64EncodeData(const void *inInputData, size_t inInputDataSize, char *outOutputData, size_t *ioOutputDataSize, BOOL wrapped);
extern bool Base64DecodeData(const void *inInputData, size_t inInputDataSize, void *ioOutputData, size_t *ioOutputDataSize)
  

这是解码字符串数据的用法。

NSString *stringValue = /*the UTF8 string parsed from xml data*/
Byte inputData[[stringValue lengthOfBytesUsingEncoding:NSUTF8StringEncoding]];//prepare a Byte[]
[[stringValue dataUsingEncoding:NSUTF8StringEncoding] getBytes:inputData];//get the pointer of the data
size_t inputDataSize = (size_t)[stringValue length];
size_t outputDataSize = EstimateBas64DecodedDataSize(inputDataSize);//calculate the decoded data size
Byte outputData[outputDataSize];//prepare a Byte[] for the decoded data
Base64DecodeData(inputData, inputDataSize, outputData, &outputDataSize);//decode the data
NSData *theData = [[NSData alloc] initWithBytes:outputData length:outputDataSize];//create a NSData object from the decoded data