2

我有一个问题,当我保存我的文本字段时,重音消失了,并且没有保存到 de bd。


例子 :

入口:“la meva ocupació és x” 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 接收数据时,此数据包含重音,并且它们完美显示

我认为问题可能出在保存上。

我会非常感激任何帮助。对不起我的英语不好。

4

1 回答 1

3

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

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

要修复它,您必须通知字符集的 URlEncodedFormEntity 以使用 p 进行编码:

对于 POST 请求:

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

对于 GET 请求:

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

这应该足够了。

于 2013-08-28T11:41:38.850 回答