2014-06-29 39 views
2

嗨我有一个在我的记忆中的图像,我想通过一个外部的FTP库发送它。如何将字符串转换为标准C文件?

此FTP库仅接受标准C FILE,并且此库提供的示例代码仅从硬盘读取数据。在我的应用程序中,我不想将自己的图像存储在硬盘中,然后使用FILE变量读取它们,而我想在内存中进行转换,因此速度更快,更专业。

我的图像形式为uchar *,但我可以将其更改为std::StringQByteArray或任何其他类型的字符串。现在我想知道如何获得由我的图像数据填充的文件,以便我摆脱将其存储在硬盘中并再次读取。

我的伪代码:

uchar * image = readImage(); 
    FILE * New_Image = String2FileConverter(image); //I need this function 
    FTP_Upload(New_Image); 

回答

5

在POSIX系统中,你可以使用fmemopen创建后备存储文件句柄。

+0

这里是类似的[Windows的问题](http://stackoverflow.com/questions/12249610/c-create-file-in-memory)。 –

相关问题