2016-10-10 92 views
0

我在使用大氣框架傳輸某些特殊字符時遇到了問題。Unicode字符作爲使用大氣的垃圾字符流式傳輸

氣氛版本:2.1.0-RC2

的Java:7個

一些Unicode字符,像「AEɑdƎəɛɣ我IJƖňŒƆƱ-k的ẞÞƲǷȜ 「使用大氣不能正確流動。

我將AtmosphereResource CharacterEncoding設置爲UTF-8,然後從服務器端進行流式傳輸。

res.setContentType("text/plain"); 
res.setCharacterEncoding("UTF-8"); 
+0

這些字符是如何存儲在應用程序中的?在文本文件或源代碼? – nandsito

+0

我們從JMS主題獲取消息。 –

+0

確保您收到的非ASCII字符處於預期的編碼中,否則您將不得不在文本到達時轉換編碼 – nandsito

回答

0

我不熟悉大氣框架,但作爲解決方法,我可以建議使用庫MgntUtils。該庫具有一個Unicode編碼器 - 解碼器實用工具,可以接受任何字符串並將其轉換爲\ UXXXX格式的Unicode編碼字符串,然後將其轉換回來。因此,您可以將您有問題的字符串通過然後轉換爲Unicode序列,然後將其轉換回來。它幫助我解決和診斷一些棘手的編碼問題。這裏鏈接到庫:GitHub(jar,sources和javadoc API),Maven Central,最後一篇文章解釋瞭如何在庫中使用這些Utils:MgntUtils article。在文章中查找字幕「字符串Unicode轉換器」。整合和使用它非常容易。