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

📄 ptg.java

📁 java 读写word excel ppt
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
             case ArrayPtgV.sid :               // 0x40             	retval = new ArrayPtgV(in);             	break;             case ArrayPtgA.sid :               // 0x60             	retval = new ArrayPtgA(in);             	break;        	               case FuncPtg.sid :                 // 0x21             case FuncPtg.sid + 0x20 :          // 0x41             case FuncPtg.sid + 0x40 :          // 0x61                 retval = new FuncPtg(in);                 break;        	               case FuncVarPtg.sid :              // 0x22             case FuncVarPtg.sid + 0x20 :       // 0x42             case FuncVarPtg.sid + 0x40 :       // 0x62                 retval = new FuncVarPtg(in);        	                  break;        	               case ReferencePtg.sid :            // 0x24                   retval = new ReferencePtg(in);        	                  break;             case RefAPtg.sid :                 // 0x64                 retval = new RefAPtg(in);                 break;                case RefVPtg.sid :                 // 0x44                 retval = new RefVPtg(in);                 break;                case RefNAPtg.sid :                // 0x6C                 retval = new RefNAPtg(in);                 break;             case RefNPtg.sid :                 // 0x2C                 retval = new RefNPtg(in);                 break;             case RefNVPtg.sid :                // 0x4C                 retval = new RefNVPtg(in);                 break;           	                          	               case AreaPtg.sid :                 // 0x25                           retval = new AreaPtg(in);        	                  break;             case AreaVPtg.sid:                 // 0x45                 retval = new AreaVPtg(in);                 break;             case AreaAPtg.sid:                 // 0x65                 retval = new AreaAPtg(in);                 break;             case AreaNAPtg.sid :               // 0x6D                 retval = new AreaNAPtg(in);                  break;             case AreaNPtg.sid :                // 0x2D                 retval = new AreaNPtg(in);                 break;             case AreaNVPtg.sid :               // 0x4D                retval = new AreaNVPtg(in);                break;        	               case MemAreaPtg.sid :              // 0x26             case MemAreaPtg.sid + 0x40 :       // 0x46             case MemAreaPtg.sid + 0x20 :       // 0x66                 retval = new MemAreaPtg(in);                 break;        	               case MemErrPtg.sid :               // 0x27             case MemErrPtg.sid + 0x20 :        // 0x47             case MemErrPtg.sid + 0x40 :        // 0x67                 retval = new MemErrPtg(in);        	                  break;        	               case MemFuncPtg.sid :              // 0x29                 retval = new MemFuncPtg(in);                 break;        	               case RefErrorPtg.sid :             // 0x2a             case RefErrorPtg.sid + 0x20 :      // 0x4a             case RefErrorPtg.sid + 0x40 :      // 0x6a                 retval = new RefErrorPtg(in);        	                  break;        	               case AreaErrPtg.sid :              // 0x2b             case AreaErrPtg.sid + 0x20 :       // 0x4b             case AreaErrPtg.sid + 0x40 :       // 0x6b                 retval = new AreaErrPtg(in);        	                  break;        	               case NamePtg.sid :                 // 0x23             case NamePtg.sid + 0x20 :          // 0x43             case NamePtg.sid + 0x40 :          // 0x63                 retval = new NamePtg(in);                 break;        	               case NameXPtg.sid :                // 0x39             case NameXPtg.sid + 0x20 :         // 0x45             case NameXPtg.sid + 0x40 :         // 0x79                 retval = new NameXPtg(in);        	                  break;              case Area3DPtg.sid :               // 0x3b             case Area3DPtg.sid + 0x20 :        // 0x5b             case Area3DPtg.sid + 0x40 :        // 0x7b                 retval = new Area3DPtg(in);        	                  break;              case Ref3DPtg.sid :                // 0x3a             case Ref3DPtg.sid + 0x20:          // 0x5a             case Ref3DPtg.sid + 0x40:          // 0x7a                 retval = new Ref3DPtg(in);        	                  break;              case DeletedRef3DPtg.sid:          // 0x3c             case DeletedRef3DPtg.sid + 0x20:   // 0x5c             case DeletedRef3DPtg.sid + 0x40:   // 0x7c                 retval = new DeletedRef3DPtg(in);        	                  break;        	               case DeletedArea3DPtg.sid :        // 0x3d             case DeletedArea3DPtg.sid + 0x20 : // 0x5d             case DeletedArea3DPtg.sid + 0x40 : // 0x7d                 retval = new DeletedArea3DPtg(in);                 break;            default :                 //retval = new UnknownPtg();                 throw new java.lang.UnsupportedOperationException(" Unknown Ptg in Formula: 0x"+                        Integer.toHexString(( int ) id) + " (" + ( int ) id + ")");        }                if (id > 0x60) {            retval.setClass(CLASS_ARRAY);        } else if (id > 0x40) {            retval.setClass(CLASS_VALUE);        } else {            retval.setClass(CLASS_REF);        }       return retval;            }        public static int serializePtgStack(Stack expression, byte[] array, int offset) {    	int pos = 0;    	int size = 0;    	if (expression != null)    		size = expression.size();    	List arrayPtgs = null;    	    	for (int k = 0; k < size; k++) {    		Ptg ptg = ( Ptg ) expression.get(k);    		    		ptg.writeBytes(array, pos + offset);    		if (ptg instanceof ArrayPtg) {    		  if (arrayPtgs == null)    			  arrayPtgs = new ArrayList(5);    		  arrayPtgs.add(ptg);    		  pos += 8;    		} else pos += ptg.getSize();    	}    	if (arrayPtgs != null) {    		for (int i=0;i<arrayPtgs.size();i++) {    			ArrayPtg p = (ArrayPtg)arrayPtgs.get(i);    			pos += p.writeTokenValueBytes(array, pos + offset);    		}    	}    	return pos;    }    public abstract int getSize();    public final byte [] getBytes()    {        int    size  = getSize();        byte[] bytes = new byte[ size ];        writeBytes(bytes, 0);        return bytes;    }    /** write this Ptg to a byte array*/    public abstract void writeBytes(byte [] array, int offset);        /**     * return a string representation of this token alone     */    public abstract String toFormulaString(Workbook book);    /**     * dump a debug representation (hexdump) to a string     */    public String toDebugString() {        byte[] ba = new byte[getSize()];        String retval=null;        writeBytes(ba,0);                try {            retval = org.apache.poi.util.HexDump.dump(ba,0,0);        } catch (Exception e) {            e.printStackTrace();        }        return retval;    }        /** Overridden toString method to ensure object hash is not printed.     * This helps get rid of gratuitous diffs when comparing two dumps     * Subclasses may output more relevant information by overriding this method     **/    public String toString(){        return this.getClass().toString();    }        public static final byte CLASS_REF = 0x00;    public static final byte CLASS_VALUE = 0x20;    public static final byte CLASS_ARRAY = 0x40;        protected byte ptgClass = CLASS_REF; //base ptg        public void setClass(byte thePtgClass) {        ptgClass = thePtgClass;    }        /** returns the class (REF/VALUE/ARRAY) for this Ptg */    public byte getPtgClass() {        return ptgClass;    }        public abstract byte getDefaultOperandClass();    public abstract Object clone();        }

⌨️ 快捷键说明

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