在Java中有效地存储目录路径

时间:2015-12-04 18:14:50

标签: java filesystems

我正在寻找一种在不使用大量内存的情况下在Java中存储目录路径的方法。在我当前的程序中,我有一个Hashmap,它将每个文件的完整路径作为键及其值存储。

6-8

当单个文件夹中有多个文件时,此方法将重复路径,例如同一文件夹中的两个文件将存储为

private HashMap<String, Double> fileStorage = new HashMap<>();

重复文件的路径,浪费内存。为了减少对记忆的影响,你建议我做什么?

请记住,也可以有1个目录的文件,例如

/var/www/example.com/html/index.php
/var/www/example.com/html/style.css

1 个答案:

答案 0 :(得分:0)

你可以使用UUID方法,使用像这样的键映射

UUID uid = UUID.nameUUIDFromBytes("/var/www/example.com/html/index.php".getBytes());

当您需要从Map获取值时,在映射get操作之前将路径字符串传递给UUID

您可以创建一种从UUID生成长(数字)值的方法,以优化更多的内存使用量