LPImageManage.java
上传用户:gyyuli
上传日期:2013-07-09
资源大小:3050k
文件大小:2k
源码类别:

J2ME

开发平台:

Java

  1. /**
  2.  * <p>Title: lipeng</p>
  3.  * <p>Description:
  4.  * You cannot remove this copyright and notice.
  5.  * You cannot use this file without the express permission of the author.
  6.  * All Rights Reserved</p>
  7.  * <p>Copyright: lizhenpeng (c) 2004</p>
  8.  * <p>Company: LP&P</p>
  9.  * @author lizhenpeng
  10.  * @version 1.1.0
  11.  * <p>
  12.  * Revise History
  13.  * 2004.07.12 Add exception description and change out.dat to lipeng.dat v1.1.0
  14.  * </p>
  15.  */
  16. package lipeng;
  17. import javax.microedition.lcdui.Image;
  18. import java.io.*;
  19. public class LPImageManage
  20. {
  21.   public Image image;
  22.   public int frameNum;
  23.   public int frameSize;
  24.   public String imageId;
  25.   public LPImageManage(String fileName)
  26.   {
  27.     try
  28.     {
  29.       imageId=fileName;
  30.       image=Image.createImage("/"+fileName);
  31.       frameSize=image.getWidth();
  32.       frameNum=image.getHeight()/frameSize;
  33.     }
  34.     catch(java.io.IOException e)
  35.     {
  36.       System.out.println("Image, "+fileName+", could not be loaded.");
  37.       System.out.println(e.toString());
  38.     }
  39.   }
  40.   public LPImageManage(String fileName,int pos)
  41.   {
  42.     try
  43.     {
  44.       imageId=fileName;
  45.       InputStream in=getClass().getResourceAsStream("/lipeng.dat");
  46.       DataInputStream dataInput=new DataInputStream(in);
  47.       dataInput.skip(2+(pos-1)*4*2);
  48.       byte d=dataInput.readByte();
  49.       byte c=dataInput.readByte();
  50.       byte b=dataInput.readByte();
  51.       byte a=dataInput.readByte();
  52.       int byteSize=(((a&0xff)<<24)|((b&0xff)<<16)|
  53.                     ((c&0xff)<<8)|(d&0xff));
  54.       d=dataInput.readByte();
  55.       c=dataInput.readByte();
  56.       b=dataInput.readByte();
  57.       a=dataInput.readByte();
  58.       int offset=(((a&0xff)<<24)|((b&0xff)<<16)|
  59.                   ((c&0xff)<<8)|(d&0xff));
  60.       dataInput.close();
  61.       in=getClass().getResourceAsStream("/lipeng.dat");
  62.       dataInput=new DataInputStream(in);
  63.       byte buffer[]=new byte[byteSize];
  64.       dataInput.skip(offset);
  65.       dataInput.read(buffer);
  66.       image=Image.createImage(buffer,0,buffer.length);
  67.       frameSize=image.getWidth();
  68.       frameNum=image.getHeight()/frameSize;
  69.       dataInput.close();
  70.       buffer=null;
  71.     }
  72.     catch(java.io.IOException e)
  73.     {
  74.       System.out.println("Image, "+fileName+", could not be loaded.");
  75.       System.out.println(e.toString());
  76.     }
  77.   }
  78. }