如何将char *转换为TMemorystream *类型?

时间:2014-06-25 07:24:46

标签: c++

1.如何将char *保存到图像文件中? 2.如何将char *转换为TMemorystream *类型?

void process(char* data, int length)
{
   //the data is a image
}

//I have try follow code,but display a blank photo.
TMemoryStream * MemoryImageStream=new TMemoryStream;
MemoryImageStream->Position=0;
MemoryImageStream->Write(photo,len);

1 个答案:

答案 0 :(得分:0)

您需要为TMemoryImageStream对象指定适当的大小。

而不是:

TMemoryStream * MemoryImageStream=new TMemoryStream;
    MemoryImageStream->Position=0;
    MemoryImageStream->Write(photo,len);

将其更改为:

TMemoryStream * MemoryImageStream=new TMemoryStream(len);
    MemoryImageStream->Position=0;
    MemoryImageStream->Write(photo,len);

另见: http://msdn.microsoft.com/en-us/library/system.io.memorystream.aspx?cs-save-lang=1&cs-lang=cpp#code-snippet-1 [^]