调用时异常
Exception when calling
我想问一个计算空文件哈希值的问题。我需要在文件 f 首次创建且为空时计算 hash_value 。然后,最后我会再次更新hash_value。我的代码不适用于 windows os。你能告诉我如何处理吗?谢谢。
objectFile = File(fullFilePath);
fileInputStream = FileInputStream(objectFile);
data = IOUtils.toString(fileInputStream, 'UTF-8');
persistent digest;
if isempty(digest)
digest = MessageDigest.getInstance('SHA-256');
end
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
错误信息
digest.digest(java.lang.String(data).getBytes('UTF-8'))
Java exception occurred:
java.lang.NullPointerException
at java.security.MessageDigest.update(Unknown Source)
at java.security.MessageDigest.digest(Unknown Source)
看起来 data
是空的,所以不是下面的语句:
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
你能这样写吗:
if isEmpty(data)
hash = 0;
else
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
end
我想问一个计算空文件哈希值的问题。我需要在文件 f 首次创建且为空时计算 hash_value 。然后,最后我会再次更新hash_value。我的代码不适用于 windows os。你能告诉我如何处理吗?谢谢。
objectFile = File(fullFilePath);
fileInputStream = FileInputStream(objectFile);
data = IOUtils.toString(fileInputStream, 'UTF-8');
persistent digest;
if isempty(digest)
digest = MessageDigest.getInstance('SHA-256');
end
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
错误信息
digest.digest(java.lang.String(data).getBytes('UTF-8'))
Java exception occurred:
java.lang.NullPointerException
at java.security.MessageDigest.update(Unknown Source)
at java.security.MessageDigest.digest(Unknown Source)
看起来 data
是空的,所以不是下面的语句:
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
你能这样写吗:
if isEmpty(data)
hash = 0;
else
hash = digest.digest(java.lang.String(data).getBytes('UTF-8'));
end