3 回答

TA貢獻1789條經驗 獲得超8個贊
問題分析:
? ? ? ? ?用C#出錯,從錯誤消息中:The element type "CarOwner" must be terminated by the matching end-tag "</CarOwner>". 說明在讀取xml時出錯,認為你的xml沒有結束標記</CarOwner>
? ? ? ? ? 用Java正常,說明xml文件是沒有問題的。
? ? ? ? ? 只能是在讀取XML時采取的字符集不對,導致讀取XML是沒有讀完。并且還可以說明你的XML中肯定是有中文,并且讀取結束的地方,就在讀取中文后沒多遠。
修改方案:
? ? ? ?Encoding.GetEncoding("GBK") ??改用UTF-8

TA貢獻1773條經驗 獲得超3個贊
有中文么,查看編碼格式是否正確,你用了GBK,注應該在頭里面寫清楚,在你的text/xml換成text/xml;charset=utf-8試一試。
至于說到長度的問題,應該不會出現問題的,因為httpclient會處理好的,它會把你寫入數據的長度算出來,然后放到http頭塊里面,這個http協議的實現,你不需要管。你試一下是不是中英文的問題,或者假如你有特殊字符也會出現被中斷的問題。

TA貢獻1887條經驗 獲得超5個贊
1、斷點檢查你的XML是不是真的閉合了;
2、你的ContentType注釋掉干嘛?或者你可以直接看StringContent構造函數的第三個是什么,直接設置成text/xml不得了。
然后再試試
添加回答
舉報