說明
我需要在C++,Java和Python程序之間通過流(TCP套接字或 管道)交換二進制結構化數據。如何通過C++,Java和Python的流交換二進制結構化數據?
所以我的問題:
如何通過對C++,Java和Python流交換二元結構的數據?
- 沒有辦法來創建完整的對象必須事先連載 - 必須有可能性流和流出來數據。
- 由於性能問題,我需要一些二進制協議格式。
- 我想使用(如果可能的話)一些現有的庫,因爲手工製作所有(去)序列化是一件痛苦的事情。
我想要什麼
我的想法是一樣的東西(對於C++作家):
StreamWriter sw(7); // fd to output to.
while((DataSet const ds(get_next_row_from_db()))) {
sw << ds; // data set is some structured data
}
和C++讀者
StreamReader sr(9); // fd for input
while(sr) {
DataSet const ds(sr);
// handle ds
}
有類似的語法和語義的Java和Python。
我做什麼
我想過使用像谷歌協議緩衝器現有的庫,但不支持流處理和有需要的序列化之前創建完整的對象層次。
另外我雖然關於創建自己的二進制格式,但這是太多的工作和痛苦。
請閱讀[我應避免詢問什麼類型的問題?](http://stackoverflow.com/help/dont-ask)。 – lpapp
對於那些關閉這個:我重新提出了恕我直言,它符合計算器規則的問題。如果您認爲仍有問題,請發表評論。如果不是,請重新打開。 –
您仍然要求推薦。即使它重新開放,它也會突然關閉。放手吧。 – lpapp