我正在尝试使用wxZipOutputStream写出一个zip文件。代码来自此论坛并使用xml文件(当我使用wxTextOutputStream时)。现在,我正在尝试包含一个图像文件,但是wxImage类中的SaveFile函数需要一个类wxOutputStream,但是wxTextOutputStream / wxDataOutputStream没有基类,所以我无法编译它。我只想写一个wxImage和一个xml文件到zip。我该怎么办呢?

//convert stream to zip file. 
wxFFileOutputStream out(m_loaded_filename.GetFullPath()); 
wxZipOutputStream zip(out); 
//  wxTextOutputStream txt(zip); 
wxDataOutputStream txt(zip); 


zip.PutNextEntry("my.xml"); 
txt << xmltext; 
... 
... 
... 

//value is wxImage* 
//key is wxString 
zip.PutNextEntry(key); //filename 
if(value->IsOk()) 
{ 
   value->SaveFile(zip); //compiler throws error. 
} 
有帮助吗?

解决方案

看起来就像你必须指定图像的类型一样存档,试试:

value->SaveFile(zip, wxBITMAP_TYPE_PNG)

key 中的文件扩展名当然应为.png)

其他提示

类型转换是否有效:

值 - &GT; SAVEFILE((wxOutputStream&安培)拉链);

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top