Я получаю следующую ошибку в RAD:
java.net.URISyntaxException: Illegal character in path at index 16: file:/E:/Program Files/IBM/SDP/runtimes/base......
Не могли бы вы сообщить мне, что такое ошибка и как ее решить?
Я получаю следующую ошибку в RAD:
java.net.URISyntaxException: Illegal character in path at index 16: file:/E:/Program Files/IBM/SDP/runtimes/base......
Не могли бы вы сообщить мне, что такое ошибка и как ее решить?
В индексе 16 есть незаконный символ. Я бы сказал, что ему не нравится пробел в пути. Вы можете процент кодировать специальные символы, такие как пробелы. В этом случае замените его на %20.
Вопрос, связанный с выше, предполагает использование URLEncoder:
String thePath = "file://E:/Program Files/IBM/SDP/runtimes/base";
thePath = URLEncoder.encode(thePath, "UTF-8");
Я столкнулся с тем же, что и с Bing Map API. URLEncoder только что усугубил ситуацию, но replaceAll(" ","%20");
сделал трюк.
Вы пробовали это?
new File("<PATH OF YOUR FILE>").toURI().toString();
У меня была похожая проблема для xml. Просто передайте ошибку и решение (отредактирована версия Jonathon).
Код:
HttpGet xmlGet = new HttpGet( xmlContent );
Формат Xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<employee>
<code>CA</code>
<name>Cath</name>
<salary>300</salary>
</employee>
Ошибка:
java.lang.IllegalArgumentException: Illegal character in path at index 0: <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<contents>
<portalarea>CA</portalarea>
<portalsubarea>Cath</portalsubarea>
<direction>Navigator</direction>
</contents>
at java.net.URI.create(URI.java:859)
at org.apache.http.client.methods.HttpGet.<init>(HttpGet.java:69)
at de.vogella.jersey.first.Hello.validate(Hello.java:56)
Не совсем совершенное Решение: (ошибка исчезла для этого экземпляра)
String theXml = URLEncoder.encode( xmlContent, "UTF-8" );
HttpGet xmlGet = new HttpGet( theXml );
Любая идея Что я должен делать? Он просто очистился, но у него была проблема при выполнении этого
HttpResponse response = httpclient.execute( xmlGet );
каталог установки не может иметь место. переустановка программного обеспечения исправит его
Если эта ошибка возникает при использовании jdk, используйте это:
progra ~ 1 вместо файлов программы в примере пути:
c:/progra~1/java instead of c:/program files/java
Это нормально, всегда избегайте пробела в Java-коде.....
его можно использовать для каждой вещи в программных файлах, иначе вставлять кавычки в начале и en пути
"C:/..../"
Сегодня я получил эту ошибку, и в отличие от всех вышеперечисленных ответов моя ошибка вызвана новой причиной.
В моем японском файле strings.xml, я удалил нужную строку.
Некоторые, как андроид перепутали всю другую строку, и это вызвало ошибку.
Решение состояло в том, чтобы включить все строки из моей обычной английской строки .xml
Включая те строки, которые не были переведены на японский язык.
Имела ту же проблему с пробелами. Комбинация URL и URI разрешила это:
URL url = new URL("file:/E:/Program Files/IBM/SDP/runtimes/base");
URI uri = new URI(url.getProtocol(), url.getUserInfo(), url.getHost(), url.getPort(), url.getPath(), url.getQuery(), url.getRef());
* Источник: fooobar.com/info/162004/...