基于javaFx实现文件上传解析后导出功能软件

        javaSwing和javaFx都可以用来写GUI图形化界面,最近也是因为工作需要学习了相关的技术,并且就文件选择器进行了对比,总体来说swing的文件选择界面比较老气,fx的界面比较符合当下,但是感觉fx使用的人比swing的人还要少(笔者学习的时候网上就fx的参考文档少之又少,纯讨论)

        首先说下fx使用中我发现的优点:

        1、文件选择界面符合当下审美,不老气。

        2、使用较为简单,两三行代码即可实现文件框弹出选择获取路径操作。

        3、文本框显示超过当前界面会自动有滚动条,swing需要去配置。

        缺点:

        1、给按钮设置具体对应的位置比较繁琐,xyz轴到现在都还没理清,笔者是设置一次运行一次看位置是否正确。

            以下是软件界面,分为一个展示上传路径和保存成功否的提示区和一个按钮:

        首先说几点注意事项:

        1、通过primaryStage.setResizable(false)设置客户端界面大小固定。

        2、通过textArea.setEditable(false)设置文本区不可编辑状态。

      

        以下是按钮绑定事件代码:

                

  buttonLoad.setOnAction(new EventHandler<ActionEvent>(){
            @Override
            public void handle(ActionEvent arg0) {
                FileChooser fileChooser = new FileChooser();
                //设置文件上传类型
                FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("excel files (*.xlsx)", "*.xlsx");
                fileChooser.getExtensionFilters().add(extFilter);
                File file = fileChooser.showOpenDialog(primaryStage);
                textArea.appendText( "\n"+"你选择的文件路径为:"+file.getPath());

                //          业务逻辑代码

                FileChooser fileChooserSave = new FileChooser();
                //保存文件类型
                FileChooser.ExtensionFilter extFilter1 = new FileChooser.ExtensionFilter("excel files (*.xlsx)", "*.xlsx");
                fileChooserSave.getExtensionFilters().add(extFilter1);
                File fileSave = fileChooserSave.showSaveDialog(primaryStage);
                textArea.appendText( "\n"+"你保存的文件路径为:"+fileSave.getPath());
}

        获取文件,通过创建文件输入流,获取文件并且操作业务逻辑,再弹出保存框获取用户需要保存的路径,最后通过输出流输出,可以参考javaSwing 的业务方式:

基于javaSwing实现文件上传解析后导出功能软件

        两种不同的方式各有利弊,适合自己的才是最好的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值