我有一個生成數據的erlang程序。這些數據需要通過udp傳輸到非Erlang程序進行進一步處理。我已經有這部分工作 - 通過udp發送數據並在另一個非erlang端接收數據。將erlang條件轉換爲字符串或解碼erlang二進制文件
這是問題所在。數據(像包含列表的元組這樣的erlang術語)似乎不能「按原樣」(即,我不能只發送任意的erlang術語)。它顯然需要首先轉換爲文本或二進制文件。轉換爲二進制似乎很容易與我發現的bif。問題是,二進制gobbledygook出現在另一邊,我不知道任何簡單的方法來解碼它(另一邊是非erlang)。
除非有人告訴我一些簡單的方法來二進制官樣文章的另一邊進行解碼,我想的要發送的數據爲條件的簡單字符串表示 - 例如一個元組是這樣的:
{[1,2,3],[4,5,6]}
發送這樣的:
"{[1,2,3],[4,5,6]}"
我還沒有看到任何這樣的BIF,即「convert_term_to_ascii/1」我知道我可以掃描併發送條款令牌交涉,但我不想等。要做到這一點 - 解碼在另一邊是我不想處理的痛苦用。
我知道我不是第一個,第二個或第三個有這個問題的人。它必須相當普遍。通常如何處理?
有人可以指點我一些資源,告訴我如何1)將二進制gobbledygook轉換爲ascii(在非erlang端需要),或2)直接將術語轉換爲字符串(在erlang端需要)?
或者,告訴我我是怎麼錯了,我該怎麼做呢?
謝謝。
剛剛遇到一個相關的問題,轉換一個二進制或字符串的形式,這將是有效的文件輸入:諮詢/ 1到Erlang的條款,但不是從一個文件開始。我決定爲未來的自我記錄解決方案,也許其他人會發現它有幫助:http://zxq9.com/archives/1354 – zxq9 2017-09-04 04:11:25