检查 Java 中的文件扩展名

2022-09-01 14:09:42

我必须将数据从Excel文件导入数据库,为此,我想检查所选文件的扩展名。

这是我的代码:

String filename = file.getName();
String extension = filename.substring(filename.lastIndexOf(".") + 1, filename.length());

String excel = "xls";
if (extension != excel) {
    JOptionPane.showMessageDialog(null, "Choose an excel file!");
}
else {
    String filepath = file.getAbsolutePath();
    JOptionPane.showMessageDialog(null, filepath);
    String upload = UploadPoData.initialize(null, filepath);

    if (upload == "OK") {
        JOptionPane.showMessageDialog(null, "Upload Successful!");
    }
}

但我总是得到:

选择一个 Excel 文件!

我找不到我的代码有什么问题,有人可以帮忙吗?


答案 1

以后

extension != excel

应该是

!excel.equals(extension)

!excel.equalsIgnoreCase(extension)

另请参见


答案 2

==测试参照相等性。对于值相等性检验,请使用 。如果您希望在相等性测试期间忽略大小写,请使用此选项。.equalsString#equalsIgnoreCase

另一件事:不要重新发明轮子,除非它严重破损。在你的情况下,你应该使用Apache Commons的文件名Utils#isExtension来检查扩展名。