GAE程序調用騰訊微博API亂碼有關問題

1、環境
1.1 工程屬性UTF-8
1.2 GAE程序
1.3 騰訊微博API java sdk
2、程序作用
該程序從網絡中讀取內容,然後發到騰訊微博上。
3、問題
GAE裏面因爲不能使用socket,所以我就修改了騰訊提供的sdk中的apache的httpClient.executeMethod(httpPost)的這個方法,使用httpurlconntion來操作,裏面具體內容就是用post方法打開url,其中裏面我明確指定了使用UTF-8編碼,具體類就是QHttpClient類中的public String httpPost(String url, String queryString) throws Exception方法,因爲SDK裏面已經把queryString做了UTF-8的處理,所以我就直接把它寫入OutputStream裏面。程序寫好後,我在本地測試(eclipse 的google plugin)沒問題,可以正常運行,但是上傳到GAE裏面運行發佈到騰訊微薄的內容卻是一堆的問號,那麼我想問這個亂碼問題如何解決?我在appengine-web.xml裏面也加上了<property name="file.encoding" value="UTF-8"/><property name="DEFAULT_ENCODING" value="UTF-8"/> 強制使用UTF-8來編譯,但還是出現亂碼問題,本地運行好好的,上傳到GAE上就有問題,這個讓人很納悶。我懸賞20分,希望解決的人也動手寫一下看是不是跟我的這個問題一樣。

問題解決,編碼不規範的問題,我們一般都是用URLEncoder.encode(String)其實這樣是不對的,碰到系統編碼不一樣的時候會出亂碼,應該直接指定編碼:URLEncoder.encode(String,"UTF-8")
問題解決,編碼不規範的問題,我們一般都是用URLEncoder.encode(String)其實這樣是不對的,碰到系統編碼不一樣的時候會出亂碼,應該直接指定編碼:URLEncoder.encode(String,java.lang.IllegalStateException,"UTF-8")

------解決方案--------------------------------------------------------
可參考:
騰訊微博java(android) api 包含95%接口,java.util.jar.JarException,使用簡單,該怎麼解決   http://www.myexception.cn/android/178995.html


相關的主題文章:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章