Я пишу код для работы с текстом из Википедии, и у меня возникают проблемы с искажением штрихов.Раньше я не работал с черточками или другими нестандартными символами (нестандартным для меня является символ, которого нет на моей клавиатуре;), поэтому я не уверен, куда указывать пальцем на то, что яделать неправильно.Вот что происходит вместе с фрагментами кода .....
Я отправляю запрос в Википедию (я использую клиентский API Apache HttpComponents для связи с Википедией) для получения содержимого статьи и сохраняю его.в строке:
DefaultHttpClient client = new DefaultHttpClient();
HttpGet queryRequest = new HttpGet(query); // query is the URL for retrieving the article contents.
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = client.execute(queryRequest, responseHandler);
На этом этапе, если я отправлю «responseBody» в System.out, в моей консоли Eclipse отображаются черточки «?».Это может быть просто проблема с отображением консоли Eclipse, поэтому я продолжу.
Я манипулирую текстом, игнорируя дефисы, а затем отправляю текст обратно в Википедию.
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
postParams.add(new BasicNameValuePair("text", content); // content is a String with the article text
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(postParams, "UTF-8");
HttpPost queryRequest = new HttpPost(url); // url is the basic URL for the Wikipedia api
queryRequest.setEntity(entity);
queryRequest.addHeader("Content-Type", "application/x-www-form-urlencoded");
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = client.execute(queryRequest, responseHandler);
Когда текст, который теперь загружен в Википедию, отображается в веб-браузере, то, что раньше было черточками, теперь отображается как «?»в коробке (неизвестный персонаж?).Поэтому где-то я случайно меняю или неправильно кодирую штрихи, но я точно не знаю, где именно.
Может ли кто-нибудь указать мне правильное направление?