Android Как отправить текст с акцентом на PHP

У меня проблема с моим приложением, когда я пытаюсь отправить на мой сервер apache текст, содержащий такие символы, как mé mí mó mú, он отправляет символ как m?. Как я могу решить это?

Это мой код:

public boolean loginstatus(String reporte, String user) {
            File file = new File(fileUri.getPath());
            try {
                  MultipartEntityBuilder entity = MultipartEntityBuilder.create();
                  Log.e("enviando", "archivo "+fileUri.getPath());
                  Log.e("enviando", "reporte "+reporte);
                  Log.e("enviando", "usuario "+user);
                  entity.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
                  entity.addTextBody("reporte", reporte);
                  entity.addTextBody("usuarioID",user);
                  if (file.length() <= 0){
                  }else{
                  entity.addPart("archivo", new FileBody(file));
                  }
                  final HttpEntity yourEntity = entity.build();
                  httppost.setEntity(yourEntity);
                  HttpResponse response = httpclient.execute(httppost);
                } catch (ClientProtocolException e) {
                     e.printStackTrace();
                } catch (IOException e) {
                     e.printStackTrace();
                }
            return true;

        }

1 ответ

Решение

Прежде всего, проблема здесь в вашей кодировке. Либо таблица базы данных не закодирована для использования UTF-8, либо строка, которую вы отправляете, отсутствует.

вопрос стола:

ты можешь использовать CHARACTER SET utf8 на вашем столе в БД.

Строковая проблема: элегантный способ ее решения - использование

StringEntity entity = new StringEntity(Yourtext, "UTF-8");

Другой способ заключается в использовании вашей строки getBytes("UTF-8") функция и использовать DataOutputStream

Другие вопросы по тегам