Я пытаюсь открыть файл справки из моего приложения java. Я могу сделать это, используя строку:выпуск htm-файлов с внутренней ссылкой из командной строки
Runtime.getRuntime().exec(new String[] {strPath, strUrl});
где strPath это путь к IEXPLORE.EXE и strURL мой путь файл справки. Однако, когда я передаю файл справки с внутренней ссылкой, содержащей пробел (например, «c: ... \ helpfile.htm # some section»), страница откроется в IE, но не перейдет в соответствующий раздел , Если я заменил пробел на «% 20», произойдет то же самое.
Используя командную строку в XP, возникает еще более странная вещь. Когда я бегу:
c:\> path\to\iexplore.exe "path\to\helpfile.htm#some section"
я получаю такое же поведение, как и выше, но если я типа:
c:\> path\to\iexplore.exe "path\to\helpfile.htm#some%20section"
IE загрузится, но он не будет открывать файл на всех, и я получаю направлено на мою домашнюю страницу.
Ввод пути к файлу справки с пробелом в нем в адресной строке IE успешно направляет меня в правильный раздел. Точно так же кажется, что Firefox не страдает от этих недостатков.
Я не верю, что могу многое сделать для изменения макета файлов htm или имен внутренних ссылок. Кто-нибудь столкнулся с этой проблемой и есть ли какие-либо предложения о том, как ее преодолеть? Спасибо!
Это будет запускать FF вместо IE, если это браузер по умолчанию, но, похоже, полностью игнорирует фрагмент «# some% 20section» в конце URI. Как я могу заставить браузер перейти к полному пути, а не только к файлу htm? –