Java tutorial
/* * Copyright 2005-2010 the original author or authors. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package sdloader.util; import java.io.IOException; //import sdloader.exception.NotImplementedYetException; /** * * @author c9katayama * @author yone098 */ public class MiscUtils { private static String[] browserNames = { "firefox", "mozilla-firefox", "mozilla", "konqueror", "netscape", "opera" }; public static void openBrowser(String url) throws IOException { final String os = System.getProperty("os.name").toLowerCase(); if (os.indexOf("windows") != -1) { url = appendUrlForWindows2000(os, url); Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url); return; } else if (os.indexOf("mac") != -1) { Runtime.getRuntime().exec(new String[] { "open", url }); return; } else { Runtime runtime = Runtime.getRuntime(); for (int i = 0; i < browserNames.length; i++) { try { runtime.exec(new String[] { browserNames[i], url }); return; } catch (Exception e) { } } } } /** * ????????????????????? * * @param url * ???URL * @param browserPath * ???????? * @throws IOException */ public static void openBrowser(String url, final String browserPath) throws IOException { final String os = System.getProperty("os.name").toLowerCase(); if (os.indexOf("windows") != -1) { url = appendUrlForWindows2000(os, url); } Runtime.getRuntime().exec(new String[] { browserPath, url }); } /** * // 2000????html????htm????????????????????#???? * * @param os * OS? * @param url * ??URL * @return URL??? */ private static String appendUrlForWindows2000(final String os, final String url) { String ret = url; if (os.indexOf("2000") != -1) { if (url.toLowerCase().endsWith(".html") || url.toLowerCase().endsWith(".htm")) { ret += "#"; } } return ret; } }