编码UTF-8 Java

时间:2014-02-28 12:16:34

标签: java google-app-engine encoding utf-8

我在使用Json的UTF8进行编码时遇到了问题:

我在做:

reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));

所以我得到了正确的信息:

  

“locationDescription”:“Àproximitédeéglise

然后我得到一个字符串:

À proximité de église

但是当我在Google App Engine上推送到我的数据存储区时,我有:

item.setProperty("locationDescription", LocationDescription); 
  

proximit de glise

仅供参考我的appengine-web.xml

  <system-properties>
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
    <property name="file.encoding" value="UTF-8" />
    <property name="DEFAULT_ENCODING" value="UTF-8" />
  </system-properties>

很简单的例子:

    @SuppressWarnings("serial")
public class EncodeServlet extends HttpServlet {
    public void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws IOException {
        resp.setContentType("text/plain");
        resp.getWriter().println("Hello, world");
        String test = "élèdéî";
        String test2 = new String(test.getBytes("utf-8"),"utf-8");
        System.out.println("Test " +test);
        System.out.println("Test2 "+test2);
        DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
        Entity item = new Entity("Entity", "myentity");
        item.setProperty("test", test);
        item.setProperty("test2", test2);
        datastore.put(item);
    }
}

打印

  

élèdéî   élèdéî

Datastore GAE

  

名称2    l d l d

感谢您的帮助!

0 个答案:

没有答案