我在使用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
感谢您的帮助!
让