本文整理汇总了C#中Entry.getLength方法的典型用法代码示例。如果您正苦于以下问题:C# Entry.getLength方法的具体用法?C# Entry.getLength怎么用?C# Entry.getLength使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Entry
的用法示例。
在下文中一共展示了Entry.getLength方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: idBufferBlob
private byte[] idBufferBlob(Entry e)
{
try
{
FileStream @is = e.openInputStream();
if (@is == null)
return zeroid;
try
{
initializeDigest();
contentDigest.Reset();
contentDigest.Update(hblob);
contentDigest.Update((byte)' ');
long blobLength = e.getLength();
long sz = blobLength;
if (sz == 0)
{
contentDigest.Update((byte)'0');
}
else
{
int bufn = contentReadBuffer.Length;
int p = bufn;
do
{
contentReadBuffer[--p] = digits[(int)(sz % 10)];
sz /= 10;
} while (sz > 0);
contentDigest.Update(contentReadBuffer, p, bufn - p);
}
contentDigest.Update((byte)0);
for (; ; )
{
int r = @is.Read(contentReadBuffer, 0, contentReadBuffer.Length); // was: read(contentReadBuffer) in java
if (r <= 0)
break;
contentDigest.Update(contentReadBuffer, 0, r);
sz += r;
}
if (sz != blobLength)
return zeroid;
return contentDigest.Digest();
}
finally
{
try
{
@is.Close();
}
catch (IOException)
{
// Suppress any error related to closing an input
// stream. We don't care, we should not have any
// outstanding data to flush or anything like that.
}
}
}
catch (IOException)
{
// Can't read the file? Don't report the failure either.
//
return zeroid;
}
}