我正在做一个项目,其中用户必须提供包含数据的文档。该程序读取数据并绘制一些图表。它可以正常工作,但是我想在用户保存它后打开ExcelFile ...所以我知道Excelfile的目录,但是我不知道如何在javaFX中打开excelfile,有人可以帮我吗?

亲切的问候

最佳答案

JavaFX的方法是

File excelFile = new File("/path/to/excel/file");
getHostServices().showDocument(excelFile.toURI().toURL().toExternalForm());


getHostServices()是在Application中定义的,因此,如果要在另一个类(例如,控制器)中执行此操作,则必须安排另一个类才能访问主机服务。

例如。

public class MyApp extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        FXMLLoader loader = new FXMLLoader(...);
        Parent root = loader.load();
        MyController controller = loader.getController();
        controller.setHostServices(getHostServices());
        //... setup and show scene and stage...
    }
}


用控制器中明显的方法和上面的代码进行适当的修改。

07-28 06:31