0

在下面的代码中,我正在检查文件是否以CSV 扩展名结尾。我的问题是:如果文件以xls 扩展名结尾,我需要更改为csv

示例:AA.xls 文件到 AA.CSV(仅扩展名更改)。

public boolean accept(File dir, String name) {

                    System.out.println("CSV Files Present in Dir are:   " + name);

                    return name.toLowerCase().endsWith("csv");
                 }
            });
4

5 回答 5

1

如果您只是通过更改文件扩展名将 xls 文件更改为 csv,则之后可能无法读取,除非该文件确实是 CSV“编码”。

要简单地重命名文件,请使用 blalasaadri 的 answer 和 use File.renameTo(File dest),但如果您有真正的 XLS 文件,则需要像 Apache POI 这样的库来解析文件,然后将数据存储在 CSV 文件中。

于 2013-09-17T08:42:09.323 回答
1

File.renameTo (File dest)函数是您的朋友。所以,你有一个文件,获取它的路径,用csv替换xls并从中创建一个新的File对象。然后重命名你的文件,你就完成了。

于 2013-09-17T08:29:16.990 回答
0

你可以试试这种方式

String name="a.xls";
        String []z=name.split("\\.");
        if(z[1].equals("xls")){
            z[1]=".csv";
        }
        System.out.println(z[0]+z[1]);
于 2013-09-17T08:32:00.860 回答
0

renameTo你在File类中有一个方法。您可以使用它来更改文件的扩展名。

看看javadocs

于 2013-09-17T08:28:37.860 回答
0
// File (or directory) with old name
File file = new File("oldname");
// File (or directory) with new name
File file2 = new File("newname");
// Rename file (or directory)
boolean success = file.renameTo(file2);
if (!success)
{
// File was not successfully renamed
}
于 2013-09-17T08:35:45.093 回答