⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simpleshsstream.java

📁 this gcc-g++-3.3.1.tar.gz is a source file of gcc, you can learn more about gcc through this codes f
💻 JAVA
字号:
// SimpleSHSStream.java/* Copyright (C) 2000  Free Software Foundation   This file is part of libgcj.This software is copyrighted work licensed under the terms of theLibgcj License.  Please consult the file "LIBGCJ_LICENSE" fordetails.  */package gnu.gcj.io;import java.io.Serializable;import java.io.*;import java.lang.reflect.*;public class SimpleSHSStream extends java.io.DataOutputStream{  int counter;   final int SHS_BLOCKSIZE = 64;  final int SHS_DIGESTSIZE = 20;  byte buf[];  byte shs_info[];  native static byte [] shsFinal (byte info[]);  native static void shsUpdate (byte info[], byte buf[], int count);  native static byte [] shsInit ();  private void update (byte b)  {    buf [counter++] = b;    if (counter % SHS_BLOCKSIZE == 0)      {	counter = 0;	shsUpdate (shs_info, buf, SHS_BLOCKSIZE);      }  }        public void write (int b) throws IOException  {    update ((byte)b);    super.write (b);  }  public void write (byte[] b, int off, int len) throws IOException  {    for (int i = 0; i < len; i++)      write (b[i+off]);  }  public byte[] digest()  {    shsUpdate (shs_info, buf, counter);    return shsFinal (shs_info);  }  public SimpleSHSStream (OutputStream out)  {    super (out);    buf = new byte[SHS_BLOCKSIZE];    shs_info = shsInit ();    counter = 0;  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -