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

📄 a.java

📁 Its a small library for decompress gzip files in j2me. The final size after obfuscation and jaring
💻 JAVA
字号:
import java.io.*;
//import javax.microedition.midlet.*;
import com.java4ever.apime.io.GZIP;

public final class a
//    extends MIDlet
{
  byte[][] sarr=new byte[47][];
  byte[][] zarr=new byte[47][];

  public a() {}
  static public void main(String[] args){
    new a().startApp();
  }
  /**
   * 程序入口方法
   */
  protected void startApp() {
    System.out.println("begin...");
//    for (int j = 0; j < 47; j++) {
//      sarr[j]=read("/s/m"+j+".dat");
//      zarr[j]=read("/m"+j+".dat");
//    }
//
//    for(int i=0;i<10000;i++){
//      for (int j = 0; j < 47; j++) {
//        comp(j);
//      }
//      if(i%100==0)System.out.println(i);
//    }

    try {
      byte[] a = read("/a.java.gz");
      byte[] b = GZIP.inflate(a);
      for (int i = 0; i < b.length; i++) {
        System.out.print( (char) b[i]);
      }
    }
    catch (IOException ex) {
    }

    System.out.println("end.");
  }

  private void comp(int fn) {

    //InputStream is = "".getClass().getResourceAsStream("/rfc1951.txt.gz");

    try {
      byte[] barr=zarr[fn];
      byte[] extr = GZIP.inflate(barr);
      byte[] barr_s=sarr[fn];

      //比较
      if(extr.length!=barr_s.length){
        System.out.println("map No:"+ fn+" file length error.");
      }else{
        for (int i=0;i<extr.length;i++){
          if(extr[i]!=barr_s[i])
            System.out.println("map No:"+ fn+" file Pos: "+i +" error. src="+barr_s[i]+" zip="+extr[i]);
        }
      }
    }
    catch (IOException ex) {
      ex.printStackTrace();
    }
  }

  byte[] read(String fs) {
    try {
      InputStream is = "".getClass().getResourceAsStream(fs);
      ByteArrayOutputStream baos = new ByteArrayOutputStream();
      int ch = 0;
      while ( (ch = is.read()) != -1) {
        baos.write(ch);
      }
      byte[] barr = baos.toByteArray();
      return barr;
    }
    catch (Exception e) {
      e.printStackTrace();
    }
    return null;
  }

  /**
   * 暂停方法
   */
  protected void pauseApp() {

  }

  /**
   *退出方法
   * @param unconditional boolean 是否强制
   */
  protected void destroyApp(boolean unconditional) {
    exitMIDlet();
  }

  /**
   *  可被外部调用的退出方法
   */
  public void exitMIDlet() {

  }

}

⌨️ 快捷键说明

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