当前位置: 首页 > 面试题库 >

Java:如何为文件创建SHA-1?

丌官寒
2023-03-14
问题内容

在纯Java6中为大型文件创建SHA-1的最佳方法是什么?如何实现此方法:

public abstract String createSha1(java.io.File file);

问题答案:

使用MessageDigest类并逐个提供数据。下面的示例忽略了诸如将byte []转换为字符串并关闭文件之类的细节,但是应该给了您大致的理解。

public byte[] createSha1(File file) throws Exception  {
    MessageDigest digest = MessageDigest.getInstance("SHA-1");
    InputStream fis = new FileInputStream(file);
    int n = 0;
    byte[] buffer = new byte[8192];
    while (n != -1) {
        n = fis.read(buffer);
        if (n > 0) {
            digest.update(buffer, 0, n);
        }
    }
    return digest.digest();
}


 类似资料:
  • 我想为我的jar文件创建一个windows安装程序。我不想在要部署到的目标计算机上安装jre/jdk。 我试用了jpackage(Java 14的一部分),但它对我不起作用。我尝试了以下命令:

  • 问题内容: 创建战争文件(使用eclipse)以在tomcat上运行的最佳实践是什么?教程,链接,示例受到高度赞赏。 问题答案: 你可以使用Ant来设置,编译,WAR和部署你的解决方案。 然后,你可以在Eclipse中执行一键操作以运行该Ant目标。以下是每个步骤的示例: 前提条件 我们假设你的代码组织如下: :Java文件,属性,XML配置文件 :你的JSP文件 :运行时所需的任何JAR :你的

  • 我很难把Gradle分发插件和校验和插件放在一起。 问题: 如何获取分发插件生成的所有文件的列表?fileList()方法不起作用

  • 我正在尝试将Heroku与Java结合使用,我有这个目录结构,我正在使用IntelliJ: 在程序文件中: 当我尝试heroku本地网站时,我得到“” 然而,它确实存在。我在用Windows。

  • 我正在构建一个创建XML文件的简单java程序。我正在构建以下代码: 但如果我尝试启动此代码,我会出现以下错误: 线程“AWT-EventQueue-0”java中出现异常。lang.AbstractMethodError:gnu。xml。dom。DomDocument。com上的getXmlStandalone()Z。太阳组织。阿帕奇。泽兰。内部的xsltc。特拉克斯。DOM2TO。com上的s

  • 问题内容: 我正在编写一个在Linux上运行的Java应用程序(使用Sun的JDK)。它一直在创建目录,我想防止这样做。有什么方法可以阻止Java创建这些文件? 问题答案: 尝试JVM选项 -XX:-UsePerfData 更多信息 来自链接https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html的以下内容可能会有所帮