通过在循环中递增文件名来保存视频文件

时间:2010-02-27 11:18:14

标签: java

我想通过递增文件名来保存C:\中的视频文件,例如video001.avi video002.avi video003.avi等我想在java中这样做。该计划正在

Problem in java programming on windows7 (working well in windows xp)

如何增加文件名,以便在不替换旧文件的情况下进行保存。

2 个答案:

答案 0 :(得分:1)

您有两种选择:

  1. 只需增加一个计数器,并依赖于这样一个事实,即你是编写这些文件的唯一运行进程(并且不存在)。所以你不需要检查冲突。这显然(很明显)容易出错。
  2. 使用File对象(或Apache Commons FileUtils)获取文件列表,然后递增计数器并确定相应的文件是否存在。如果没有,则写入并退出。这是一种蛮力的方法,但除非你编写成千上万的文件,否则在性能方面是完全可以接受的。

答案 1 :(得分:1)

使用File.createNewFile(),你可以原子地创建一个文件,并确定当前线程是否确实创建了该文件,该方法的返回值是一个布尔值,可以让你知道一个新文件是否是创造与否。在创建文件之前简单地检查文件是否存在将有所帮助,但不能保证在创建和写入当前线程创建它的文件时。