Java 在Windows中以系统默认浏览器打开给定URL
有不同的方式可以使用URL在浏览器中查看网页。这里使用Java代码来指定执行相同操作的方法。首先通过Java程序输入给定的URL,然后在默认浏览器中打开相关的网页。本文使用三种不同的方法来通过Java代码在浏览器中打开URL指定的网页。
多种方法
对于这些程序,使用两种不同的方法来显示给定的URL。
- 通过使用Desktop类的对象的 desktop.browse(uri) 方法。
-
通过使用JavaFX库的 getHostServices().showDocument(theURL) 方法。
步骤
-
步骤1 - 指定URL并将其作为字符串
-
步骤2 - 导入所需的库
-
步骤3 - 使用Java函数或方法打开给定的URL
-
步骤4 - 将网页显示在默认浏览器中,如URL所指定
让我们逐个查看程序及其输出。
方法1:通过desktop.browse(uri)方法
在此方法中,Desktop类支持启动用户的默认浏览器以显示指定的URI。在示例1中,URL被保持为固定字符串。
示例
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.awt.Desktop;
public class openuri{
//Java Program to Open the given URL in System Default Browser in Windows
public static void main(String[] args) {
if (Desktop.isDesktopSupported()) {
//making a desktop object
Desktop desktop = Desktop.getDesktop();
try {
URI uri = new URI("https://www.tutorialspoint.com/index.htm");
desktop.browse(uri);
} catch (IOException excp) {
excp.printStackTrace();
} catch (URISyntaxException excp) {
excp.printStackTrace();
}
}
}
}
输出
C:\java\javaprgstu>javac openuri.java
C:\java\javaprgstu>java openuri
方法2:通过使用javafx库和getHostServices().showDocument(theURL)的方法。
在这种方法中,JavaFX Scene类是承载内容的主要容器,VBox是一种布局,将组件放置在一个垂直列中。首先创建一个按钮,然后将其放在一个VBox中,然后将包含按钮的VBox放入场景中。点击按钮时获取URI。
示例
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;
import javafx.scene.paint.Color;
import javafx.scene.layout.VBox;
//Java Program to Open the specified URL in System Default Browser in Windows on press of a button
public class openuri22 extends Application {
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stgg) {
String theURL = "https://www.tutorialspoint.com/index.htm";
Button openURLBtnn = new Button("Open The URL");
openURLBtnn.setMaxSize(100, 200);
openURLBtnn.setOnAction(e -> getHostServices().showDocument(theURL));
VBox vboxx = new VBox(openURLBtnn);
Scene scene01 = new Scene(vboxx, 200, 200);
scene01.setFill(Color.LIGHTGRAY);
stgg.setScene(scene01);
stgg.setTitle("Knowing the Host");
stgg.show();
}
}
输出
C:\java\javaprgstu>run.bat openuri22
C:\java\javaprgstu>javac --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml openuri22.java
C:\java\javaprgstu>java --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml openuri22
结论
在这篇文章中,给出了不同的程序来在默认浏览器中打开给定的URL。在第一种方法中,使用了Desktop类的方法并给出了示例。在第一个示例中,代码中使用了固定的URL。在第二种方法中,使用了Javafx库和相关方法。