j2me http聯網客戶端編寫之二

2021-04-08 22:52:45 字數 1451 閱讀 1845

接收和傳送大量資料

受限於手機的連網效能,我們無法實現一次性的傳送大量資料(如的傳送和接收),因此必須實現資料的分段接收和傳送.

例子:

客戶端採用http,伺服器用php編寫

1.接收資料

涉及到伺服器和客戶端的編碼方式問題,若只傳送位元組流,不做任何的編譯碼操作,則可有效的避免這一問題.一次接收資料的流程:

客戶端傳送讀取資料請求-->伺服器返回資料的段數-->客戶端讀取第一段-->客戶端讀取第二段......-->讀取完成,客戶端處理資料.

2.傳送資料

傳送資料的流程正好跟接收資料相反.

傳送資料時採用post,模擬pc上上傳檔案的方法

一次傳送**

string   type = "multipart/form-data;" + "boundary=" + boundary;  //模擬form 傳送

byte result = null;

try

result = baos.tobytearray();

baos.close();

} catch (exception e) finally

if (hc != null)

} catch (exception e)

}return result;

rawdata 為傳送的資料,其組成方式為

分隔符號

專案分隔符號

專案分隔符號..

..

分隔符號可隨機生成,每一項用分隔符號分隔,使用者可任意向裡面新增專案.

--7d4a6d158c9

content-disposition: form-data; name="offset" //此次傳送的資料在整個檔案中的下標

6144

--7d4a6d158c9

content-disposition: form-data; name="length"//此次傳送的資料長度

444

--7d4a6d158c9

content-disposition: form-data; name="total"   //總的資料長度

content-disposition: form-data; name="file"; filename="camare.jpg"   //檔名可任意寫

鯻q}魁碩08]t刊檍?x凗侜w??    //傳送的資料段

--7d4a6d158c9--

Python編寫FTP客戶端

之前寫過一篇ftp服務端的文章,這篇介紹一下客戶端吧。在使用虛擬機器的時候,由於虛擬機器工具沒安裝成功,所以我決定用ftp在主機與虛擬機器之間傳送檔案,在虛擬機器上開啟ftp服務,然後把客戶端放在主機上,當然也可以顛倒過來。服務端請參考 python實現ftp伺服器 import ftplib im...

關於客戶端編寫的問題

最近在敲大話設計模式中的c 我是在看uml圖去敲 的.由於uml圖中沒有畫出客戶端的圖.導致寫客戶端的 時,很是費力.不清楚該怎麼寫.沒有一點的章法.總是蒙幾句.最後執行出來了,感覺就是 對的,也不知道自己是怎麼寫出來的.讓我從頭寫一次.和上次的感覺還是一樣的.我仔細分析了一下.關於為什麼不會寫客戶...

關於客戶端編寫的問題

最近在敲大話設計模式中的c 我是在看uml圖去敲 的.由於uml圖中沒有畫出客戶端的圖.導致寫客戶端的 時,很是費力.不清楚該怎麼寫.沒有一點的章法.總是蒙幾句.最後執行出來了,感覺就是 對的,也不知道自己是怎麼寫出來的.讓我從頭寫一次.和上次的感覺還是一樣的.我仔細分析了一下.關於為什麼不會寫客戶...