我正在尝试从我的java应用程序中打开一个帮助文件。我可以使用以下行:
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文件的布局或内部链接的名称。有没有人遇到过这个问题,是否有任何关于如何克服它的建议?谢谢!
答案 0 :(得分:0)
使用Desktop
类,如下所示:
Desktop.getDesktop().browse(new Uri(path));
请记住,有些人(包括我自己)使用的是Firefox而不是IE。
答案 1 :(得分:0)
您是否尝试过使用文件网址?
\path\to\iexplore.exe file:///path/to/your/helpfile.html#some%20section