簡體   English   中英

非標准UTF-8字符的mongoDB

[英]mongoDB with non-standard UTF-8 characters

將異常字符插入MongoDB時遇到問題。

字符如下:éèíáà...等

基本上,這些字符主要在拉丁美洲國家/地區使用。

當我通過腳本插入它時(因為如果我在控制台中嘗試過它,它會回答“ non-utf-8字符”),這很好,將它添加到集合中,但是有一些奇怪的字符。

如果我找到一個類似“Olá”的東西,並且我有一個用“Olá”搜索的字段,但是帶有那些怪異的字符,它將回答我想要的字段上的數據……不過,如果在字段中存在某種不是您的標准英語字符類型的字符,它顯示如下內容:

til?

有什么辦法可以解決這個問題?

我正在使用Websphere Portal服務器,PortletView文件以UTF-8輸出,當發送到數據庫進行查詢時,Servlet處理輸入的數據以UTF-8對其進行編碼,並且還處理從數據庫檢索到的數據放入UTF-8(請確定)。

提前致謝。

檢查Servlet過濾器是否不會導致請求使用錯誤的字符編碼。 這可能是由於在將請求的字符編碼設置為UTF-8之前,調用了ServletRequestgetParameterXXX()方法之一。

Servlet規范指出默認使用ISO8859-1。 請參閱SRV.3.9請求數據編碼

還要確保響應使用正確的內容類型(帶有編碼)。 如以上評論中所述:

String contentType= "text/html;charset=UTF-8";
response.setContentType(contentType);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM