在输出Java之前更改文件名及其扩展名

时间:2012-01-18 11:54:08

标签: java file filepath

假设我在D中有一个文件:文件路径为:

        D:\work\2012\018\08\2b558ad8-4ea4-4cb9-b645-6c9a9919ba01

目前此文件的名称没有意义。它没有格式。我希望能够从Java中的上述文件路径创建文件对象,并在将其写入字节之前更改其名称和格式。新路径可能如下:

       D:\work\2012\018\08\mywork.pdf

完成更改后,我仍然可以正常访问原始文件。

我已经知道文件的类型及其名称,因此获取这些细节不会有问题。

2 个答案:

答案 0 :(得分:10)

只需重命名文件:

File file = new File(oldFilepath);
boolean success = file.renameTo(new File(newFilepath));

您也可以只提供一个文件名并使用与当前文件相同的父文件:

File file = new File(oldFilepath);
file.renameTo(new File(file.getParentFile(), newFilename));

答案 1 :(得分:5)

目前还不清楚你究竟想要什么;我希望这个答案对你有用。

假设您有一个代表java.io.File的{​​{1}}对象,并且您希望拥有一个代表D:\work\2012\018\08\2b558ad8-4ea4-4cb9-b645-6c9a9919ba01的{​​{1}}对象。您已经知道新文件名File,但是您想从原始D:\work\2012\018\08\mywork.pdf对象中获取目录名称。你可以这样做:

mywork.pdf