0

我目前正在编写一个输入文件重命名器,以确保我的所有输入值都有一个唯一的名称。但是我现在想知道如何存储唯一名称,很可能是整数+扩展名。

到目前为止,我已经考虑过:

  • 数据库。可能很慢,总是需要连接。
  • 注册表。不确定您是否想将注册表用于这样的简单计数器,它将进行大量修改。
  • 纯文本文件。似乎是最简单的选项,但很容易删除,因此不像数据库/注册表那样提供那么多的“安全性”。

重命名器将如下所示:

  • 输入randomstrings.pdf->1.pdf
  • 输入notrandomatall.pdf->2.pdf
  • 输入abcdef.pdf->3.pdf
  • 等等

它还需要在程序和系统(服务器)关闭/故障的多次执行中保持不变。

问候

4

2 回答 2

1

经典建议只是生成一个随机的字符序列(通常 6 个字母数字就足够了),如果目标文件名已经存在,则尝试使用不同的文件名。毕竟,文件系统确实已经存储了有关使用的文件名的信息,因此实际上没有必要以其他形式(数据库、注册表等)再次存储该信息。

于 2013-07-30T07:20:21.370 回答
1

这个答案已经给出:

  1. 数据库可以处理查询任务,因此您不必手动遍历文件。数据库可以处理非常复杂的查询。

  2. 数据库可以处理索引任务,所以如果像 get record with id = x 这样的任务可以非常快

  3. 数据库可以处理多进程/多线程访问。

  4. 数据库可以处理来自网络的访问

  5. 数据库可以监视数据完整性

  6. 数据库可以轻松更新数据(见 1))

  7. 数据库是可靠的

  8. 数据库可以处理事务和并发访问

  9. 数据库 + ORM 让您以对程序员非常友好的方式操作数据。

于 2013-07-30T07:30:25.127 回答