ITPub博客

首页 > Linux操作系统 > Linux操作系统 > JAVA打开IE

JAVA打开IE

原创 Linux操作系统 作者:Naviler 时间:2009-02-25 10:37:15 0 删除 编辑

package fm5.console.util;

import java.io.IOException;

import fm5.console.util.LogUtil;

/**
 *  * TODO To change the template for this generated type comment go to Window -
 * Preferences - Java - Code Style. - Code Templates
 */
public class OpenIEURL {
 // Used to identify the windows platform.
 private static final String WIN_ID = "Windows";

 // The default system browser under windows.
 private static final String WIN_PATH = "rundll32";

 // The flag to display a url.
 private static final String WIN_FLAG = "url.dll,FileProtocolHandler";

 // The default browser under unix.
 private static final String UNIX_PATH = "netscape";

 // The flag to display a url.
 private static final String UNIX_FLAG = "-remote openURL";

 public static boolean isWindowsPlatform() {
  String s = System.getProperty("os.name");
  if (os != null && os.startsWith(WIN_ID))
   return true;
  else
   return false;

 }

 public static void displayURL(String url) {
  boolean windows = isWindowsPlatform();
  String cmd = null;
  try {
   if (windows) {
    // cmd = 'rundll32 url.dll,FileProtocolHandler http://...'
    cmd = WIN_PATH + " " + WIN_FLAG + " " + url;
    Process p = Runtime.getRuntime().exec(cmd);
   } else {
    // Under Unix, Netscape has to be running for the "-remote"
    // command to work. So, we try sending the command and
    // check for an exit value. If the exit command is 0,
    // it worked, otherwise we need to start the browser.
    // cmd = 'netscape -remote openURL(http://www.javaworld.com)'
    cmd = UNIX_PATH + " " + UNIX_FLAG + "(" + url + ")";
    Process p = Runtime.getRuntime().exec(cmd);
    try {
     // wait for exit code -- if it's 0, command worked,
     // otherwise we need to start the browser up.
     int exitCode = p.waitFor();
     if (exitCode != 0) {
      // Command failed, start up the browser
      // cmd = 'netscape http://www.javaworld.com'
      cmd = UNIX_PATH + " " + url;
      p = Runtime.getRuntime().exec(cmd);
     }
    } catch (InterruptedException x) {
     System.err.println("Error bringing up browser, cmd='" + cmd
       + "'");
     System.err.println("Caught: " + x);
    }
   }
  } catch (IOException x) {
   // couldn't exec browser
   System.err.println("Could not invoke browser, command=" + cmd);
   System.err.println("Caught: " + x);
  }
 }

 public static void displayURLWithIE(String url) {
  String cmd = "explorer " + url;
  try {
   Runtime.getRuntime().exec(cmd);
  } catch (IOException e) {
   LogUtil.error("Could not invoke browser, command=" + cmd, e);
  }
 }

 public static void main(String[] args) {
  try {
   //displayURL("http://www.google.com");
   displayURLWithIE("http://www.google.com");
  } catch (Exception e) {
   LogUtil.error("", e);
  }
 }

}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17074730/viewspace-557681/,如需转载,请注明出处,否则将追究法律责任。

上一篇: JTable 隐藏某一列
请登录后发表评论 登录
全部评论

注册时间:2009-01-15

  • 博文量
    16
  • 访问量
    53549