0

我正在通过电话向服务器发送一些消息。但是,当我发送它时,像ó,í等特殊字符没有发送ok,我看到“?” 而不是字符。我在这里接受消息:

chatmensaje=text.getText().toString();
                    chatmensaje=chatmensaje.trim();
                    vaciarChat();
                    params=new ArrayList<NameValuePair>();
                    params.clear();
                    params.add(new BasicNameValuePair("mensaje", "Personal: "+chatmensaje));
                    params.add(new BasicNameValuePair("subnotid", String.valueOf(General.subnotid)));
                    try {
                        CustomHttpClient.executeHttpPost(urlchat, params);

                            runOnUiThread(new Runnable(){
                                    public void run(){

                                if(chatmensaje != ""){
                                General.mensajes.add(chatmensaje);
                                //text.setText("");


                                mHandler.post(new Runnable() {
                                    public void run() {

                                        madapter = new MessageAdapter(
                                                getApplicationContext(), 0, General.mensajes);
                                        setListAdapter(madapter);
                                        madapter.notifyDataSetChanged();
                                    }

                                });
                                }
                                    }
                            });
                    } catch (IOException e){
                        e.printStackTrace();
                        General.chatnotsent.add(chatmensaje);
                    } catch (Exception e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                        General.chatnotsent.add(chatmensaje);
                    }

                }

“文本”是一个 EditText。如何将字符串格式化为特殊字符显示得很好?谢谢。

4

2 回答 2

1

-您将需要使用UrlEncodedFormEntity.

例如:

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);

nameValuePairs.add(new BasicNameValuePair("mensaje", "Personal: "+chatmensaje));
nameValuePairs.add(new BasicNameValuePair("subnotid", General.subnotid+""));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

HttpResponse response = httpclient.execute(httppost);
于 2013-06-07T10:57:51.547 回答
0

对于特殊字符,我们使用 Unicode 定义,例如“&”:\u0026,如果我是正确的。这是一个很好的参考页面:http: //jrgraphix.net/research/unicode_blocks.php ?block=0 试试这个

于 2013-06-07T10:52:12.577 回答