Android:重音问题和ñ

时间:2013-08-28 10:09:59

标签: java android

我遇到的问题是,当我保存我的文本字段时,重音符号消失并且不会保存到de bd。


示例:

入口:“lamevaauupacióésx” bd节省了什么:“la meva ocupaci”


我想我可能在某些方面失败了:

当我从文本字段中选择数据时:

title = (EditText)findViewById(R.id.title);

当我将其转换为字符串时:

String post_title = title.getText().toString();

当我把它放在名单上时:

List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("title", post_title));

完整代码:http://pastebin.com/trrPEG33

当我在bd上进行插入时,它会带有没有问题的重音

当我从bd中重新获取数据时,此数据包含重音并且它们显示完美

我认为问题可能在于保存。

我会非常感激任何帮助。抱歉我的英文。

1 个答案:

答案 0 :(得分:3)

问题似乎依赖于JSonParser类的REST服务调用,而不考虑Android和服务中使用的字符集是不同的。

默认情况下,Android使用UTF-8编码,我怀疑您的服务使用的是ISO-8859-1(如代码的响应处理部分所示)。

要解决此问题,您必须通知charset的URlEncodedFormEntity使用p进行编码:

用于POST请求:

 httpPost.setEntity(new UrlEncodedFormEntity(params, "iso-8859-1")); //line 108

获取GET请求:

String paramString = URLEncodedUtils.format(params, "iso-8859-1"); //line 117

这应该足够了。