java 打开浏览器

import java.lang.Runtime; 
import java.io.IOException; 


import java.awt.FlowLayout; 
import java.awt.MenuItem; 
import java.awt.PopupMenu; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import java.awt.event.MouseEvent; 
import java.util.ArrayList; 


import javax.swing.ImageIcon; 
import javax.swing.JButton; 
import javax.swing.JPanel; 


public class One { 






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


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


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


   /** 
    *  Used to identify the windows platform. 
    */ 
   private final static String WIN_ID = "Windows"; 
   /** 
    *  The default system browser under windows. 
    */ 
   private final static String WIN_PATH = "rundll32"; 








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


   public static void showDocument( String url ){ 
      if( url == null ) 
         return; 
      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 e) 
            { 
               System.out.println("*** failed to bring up browser using command '" + cmd + "': " +e.toString() ); 
            } 
         } 
      } 
      catch( IOException io) 
      { 
         // couldn't exec browser 
         System.out.println( "*** failed to bring up browser using command '" + cmd + "': " + io.toString() ); 
      } 
   } 
  
   public static void main(String args[]){ 
    showDocument("www.sina.com.cn"); 
   } 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值