如何在ColdFusion 9中从哈希函数中获取原始二进制文件?

时间:2015-06-17 18:11:02

标签: coldfusion coldfusion-9 sha

在ColdFusion 9中,我正在散列一个字符串:hash("bob", "SHA1"),我需要它来返回二进制而不是十六进制字符串。

2 个答案:

答案 0 :(得分:3)

由于您知道散列字符串是十六进制的,只需使用恰当命名的binaryDecode()函数对其进行解码。

hashedString = hash("bob", "SHA1");
binaryData = binaryDecode(hashedString , "Hex");

答案 1 :(得分:1)

这是你的事吗?

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

// run : sortFiles(Paths.get("/foo/bar/"))
public static String[] sortFiles(Path directory) throws IOException {
    return Files
        .list(directory)
        .sorted((p1, p2) -> {
            try {
                final int compareModified = Files.getLastModifiedTime(p2).compareTo(Files.getLastModifiedTime(p1));
                return compareModified != 0
                    ? compareModified
                    : Long.compare(Files.size(p2), Files.size(p1));
            } catch (IOException ex) {
                throw new RuntimeException(ex);
            }
        })
        .map(Path::getFileName)
        .map(Path::toString)
        .toArray(String[]::new);
}

output of code

文档: