linux下用socket傳送xml格式的檔案方法

2021-06-20 17:34:05 字數 653 閱讀 3873

總體思路,還是,xml->char ,然後char ->xml,主要是使用了libxml這個庫。

1、接收端將收到的字串轉換成xml格式的資料;

2、傳送端將xml格式的資料轉換成字串傳送。

運用libxml2元件進行上述操作實際上是xmldocptr和xmlchar兩種型別之間的轉換。

1. xmldocptr -> xmlchar

xmldocptr doc;

xmlchar *xmlbuff;

int buffersize;

xmldocdumpformatmemory(doc, &xmlbuff, &buffersize, 1);

2. xmlchar -> xmldocptr

xmldocptr doc;

char * cdata;

doc = xmlparsememory(docname, strlen(cdata)+1);

怎樣把xmlchar轉換成char就無須多講了,直接用(char*)強行轉換也行。

但是,注意!

這個xml檔案,必須和可執行檔案在同乙個資料夾,或者使用相對路徑。這個xml檔案,進行傳送時,是以這個gcc -o 生成的可執行檔案的路徑為相對路徑。所以,即使你的client.c和xml在乙個資料夾,也要使用相對可執行檔案的路徑。

用socket來傳送郵件

以前用vb時,記得有個mail控制項,後來接觸到了cdo.messages這個玩意,發郵件是蠻方便,那還是在vbs的情況下,後來看了下php,perl,發現發郵件乙個函式就可以了,呵呵,那麼這些背後的細節是什麼呢,還是用socket來揭示下吧 郵件傳送離不開一樣東西,smtp,即簡單郵件傳輸協議,對...

linux下用RAW socket傳送syn包

原始碼編譯方法 gcc o syn syn.c 結果 在centos6上成功執行,用tcpdump抓包分析,傳送的對端有syn,ack包返回,一切正常。過程 寫 時忘記了對tcph protocol賦值,計算出得checksum老不對,資料報是成功發出去了,但是對端沒syn,ack包回,查了幾個小時...

Linux下用mail命令傳送郵件

1.第一種可以直接使用linux的mail伺服器,這是發件人是 x localhost.localdomain mail s hello xx 163.com上面的hello是主題,回車以後就可以輸入郵件內容,以ctrl d結束 稍等兩分鐘收到了郵件 2.第二種可以使用自己的郵箱作為發件伺服器 修改...