gpt4 book ai didi

java - 如何在运行时在 Java 中更改文件扩展名

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:10:29 25 4
gpt4 key购买 nike

我正在尝试执行程序来压缩和解压缩文件。我想要做的就是压缩一个名称为 fileName.zipfile (fileName.fileExtension) 并在解压缩时再次将其更改为 fileName.fileExtension .

最佳答案

这就是我过去重命名文件或更改其扩展名的方式。

public static void modify(File file) 
{
int index = file.getName().lastIndexOf(".");
//print filename
//System.out.println(file.getName().substring(0, index));
//print extension
//System.out.println(file.getName().substring(index));
String ext = file.getName().substring(index);
//use file.renameTo() to rename the file
file.renameTo(new File("Newname"+ext));
}

编辑:John 的方法重命名文件(保留扩展名)。要更改扩展名,请执行以下操作:

public static File changeExtension(File f, String newExtension) {
int i = f.getName().lastIndexOf('.');
String name = f.getName().substring(0,i);
return new File(f.getParent(), name + newExtension);
}

这只会将最后一个扩展名更改为文件名,即 archive.tar.gz.gz 部分。因此,它可以很好地处理名称以 . 开头的 Linux 隐藏文件这是非常安全的,因为如果 getParent() 返回 null(即在父级是系统根的情况下),它将作为一个整体“转换”为一个空字符串首先评估 File 构造函数的参数。

您将获得有趣输出的唯一情况是,如果您传入一个表示系统根目录本身的文件,在这种情况下,null 会被添加到路径字符串的其余部分之前。

关于java - 如何在运行时在 Java 中更改文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12209801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com