我試圖用Python的zlib的輸出輸出到C++字符串。這裏的問題與Python zlib output, how to recover out of mysql utf-8 table?非常相似,不同之處在於我的python腳本生成一個C++頭文件,其中壓縮數據應該以字符串形式存儲。但是,由於特殊字符和原始字節,我無法讓C++將其作爲字符串讀取。之所以我不能將它寫入文件,然後返回到C++程序,是因爲這可能是一個驅動程序組件,因此不允許讀取文件。 這是我正在嘗試的一個小例子。蟒蛇zlib的輸出到C++字符串
compressed_string = zlib.compress("This is a huge string. Around 263KB")
fptr = open('my_header.h', 'w')
content = "#ifndef __HEADER_DEFS__\n\
#define __HEADER_DEFS__\n\
\n\
#include \n\
\n\
std::string binary_compressed = \"%s\" \n\
\n\
#endif" % compressed_string
fptr.write(content)
fptr.close()
不過,我壓縮串是一個巨大的數據,不像比如我在這裏給出的,因此我增加了屏幕截圖的那種,我在實際的例子越來越字符。
請看一看http://tinypic.com/r/1078lxw/7的屏幕截圖。 謝謝
注意'\'仍還可印刷將引起當由C/C++編譯器解析逸出。 – 2011-03-15 15:38:12
@Mark B thx固定 – Will 2011-03-15 16:32:32
非常感謝。該工程 – ssarangi 2011-03-16 14:20:46