我遇到了一个问题不知道如何解决。
我在在做一个版本控制的项目,需要对每一个文件分配一个UID,然后存储在数据库中。然后传输到别的设备商通过可以查询到这个UID。
不过java.io.file的库没有一个合适的参数可以用来存储这个UID。我应该如何才能实现将UID保存在文件中呢?我查找了oracle的io库还有apache.common.io的库 其中对File的操作 我也没找到哪里可以添加类似的属性来存储UID的。我试着自己建立一个扩展类,但是具体添加一个属性,还涉及到修改整个File类,包括FileInput,Output等地方,这个我不知道如何去做。而我又不能直接用文件的路径作为数据库的key。 所以这里不知道该如何解决。

解决方案 »

  1.   

    如果文件不是文本文件就将uid作为内容写到文件里吧 没有什么属性专门让你存储什么uid的
      

  2.   

    SVN是通过额外的隐藏文件和文件夹做的。或许你可以参考一下。
      

  3.   


    因为导师让我用纯Java做,也就是跨平台,不调用本地API。 所以如果不给文件一个明确的“身份”的话,rename实现起来都很有难度...
      

  4.   

    把UID也到文件名呢?通过文件名查找
      

  5.   

    可以的 你可以按照固定的格式将uid写入 然后读取的时候先读uid然后再将文件内容输出到其他地方 再者你现在用数据库 数据库里完全可以用一个字段保存这个uid啊
      

  6.   


    我做的是类似与一个java版的跨平台dropbox...  用户不通过Dropbox来读取文件,但是他负责同步和对文件进行版本控制。
      

  7.   

    数据库是可以保存UID...而且我文件中保存的这个UID主要就是作为访问数据库的key来用的啊