gpt4 book ai didi

java - 不使用 renameTo() move 文件

转载 作者:行者123 更新时间:2023-12-01 13:42:31 27 4
gpt4 key购买 nike

在我的Java程序中,我想显示 move 文件的进度。我使用以下代码片段来复制文件,这使我能够跟踪复制的字节并将其显示在进度栏中。我想知道代码是否适合 move 文件而不仅仅是复制它们?

        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(sourceFile));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(targetFile));


int theByte;

while((theByte = bis.read()) != -1)
{
bos.write(theByte);

}

bis.close();
bos.close();

最佳答案

好的,例如,“move ”操作是一个末尾带有“删除”的副本...

BufferedInputStream bis = null;
BufferedOutputStream bos = null;

try {
bis = new BufferedInputStream(new FileInputStream(sourceFile));
bos = new BufferedOutputStream(new FileOutputStream(targetFile));

int theByte;

while((theByte = bis.read()) != -1)
{
bos.write(theByte);
}

bos.close();
bis.close();
// You may want to verify that the file's are the same (ie the file size for example)
if (!sourceFile.delete()) {
throw new IOException("Failed to remove source file " + sourceFile);
}

} catch (IOException exp) {
exp.printStackTrace();
} finally {
try {
bis.close();
} catch (Exception exp) {
}
try {
bos.close();
} catch (Exception exp) {
}
}

关于java - 不使用 renameTo() move 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20599156/

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