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

📄 utility.html

📁 一个用于对.class文件进行插桩的开源工具
💻 HTML
📖 第 1 页 / 共 4 页
字号:
<DD>Replace all occurences of <em>old</em> in <em>str</em> with <em>new</em>.<DD><DL><DT><B>Parameters:</B><DD><CODE>str</CODE> - String to permute<DD><CODE>old</CODE> - String to be replaced<DD><CODE>new</CODE> - Replacement string<DT><B>Returns:</B><DD>new String object</DL></DD></DL><HR><A NAME="signatureToString(java.lang.String)"><!-- --></A><H3>signatureToString</H3><PRE>public static final java.lang.String <B>signatureToString</B>(java.lang.String&nbsp;signature)</PRE><DL><DD>Converts signature to string with all class names compacted.<DD><DL><DT><B>Parameters:</B><DD><CODE>signature</CODE> - to convert<DT><B>Returns:</B><DD>Human readable signature</DL></DD></DL><HR><A NAME="signatureToString(java.lang.String, boolean)"><!-- --></A><H3>signatureToString</H3><PRE>public static final java.lang.String <B>signatureToString</B>(java.lang.String&nbsp;signature,                                                       boolean&nbsp;chopit)</PRE><DL><DD>The field signature represents the value of an argument to a function or  the value of a variable. It is a series of bytes generated by the  following grammar: <PRE> <field_signature> ::= <field_type> <field_type>      ::= <base_type>|<object_type>|<array_type> <base_type>       ::= B|C|D|F|I|J|S|Z <object_type>     ::= L<fullclassname>; <array_type>      ::= [<field_type> The meaning of the base types is as follows: B byte signed byte C char character D double double precision IEEE float F float single precision IEEE float I int integer J long long integer L<fullclassname>; ... an object of the given class S short signed short Z boolean true or false [<field sig> ... array </PRE> This method converts this string into a Java type declaration such as `String[]' and throws a `ClassFormatError' when the parsed type is  invalid.<DD><DL><DT><B>Parameters:</B><DD><CODE>signature</CODE> - Class signature<DD><CODE>chopit</CODE> - Flag that determines whether chopping is executed or not<DT><B>Returns:</B><DD>Java type declaration<DT><B>Throws:</B><DD><CODE>java.lang.ClassFormatError</CODE> - &nbsp;</DL></DD></DL><HR><A NAME="getSignature(java.lang.String)"><!-- --></A><H3>getSignature</H3><PRE>public static java.lang.String <B>getSignature</B>(java.lang.String&nbsp;type)</PRE><DL><DD>Parse Java type such as "char", or "java.lang.String[]" and return the signature in byte code format, e.g. "C" or "[Ljava/lang/String;" respectively.<DD><DL><DT><B>Parameters:</B><DD><CODE>type</CODE> - Java type<DT><B>Returns:</B><DD>byte code signature</DL></DD></DL><HR><A NAME="typeOfMethodSignature(java.lang.String)"><!-- --></A><H3>typeOfMethodSignature</H3><PRE>public static final byte <B>typeOfMethodSignature</B>(java.lang.String&nbsp;signature)                                        throws java.lang.ClassFormatError</PRE><DL><DD>Return type of method signature as a byte value as defined in <em>Constants</em><DD><DL><DT><B>Parameters:</B><DD><CODE>signature</CODE> - in format described above<DT><B>Returns:</B><DD>type of method signature<DT><B>See Also: </B><DD><A HREF="../../../../org/apache/bcel/Constants.html"><CODE>Constants</CODE></A></DL></DD></DL><HR><A NAME="typeOfSignature(java.lang.String)"><!-- --></A><H3>typeOfSignature</H3><PRE>public static final byte <B>typeOfSignature</B>(java.lang.String&nbsp;signature)                                  throws java.lang.ClassFormatError</PRE><DL><DD>Return type of signature as a byte value as defined in <em>Constants</em><DD><DL><DT><B>Parameters:</B><DD><CODE>signature</CODE> - in format described above<DT><B>Returns:</B><DD>type of signature<DT><B>See Also: </B><DD><A HREF="../../../../org/apache/bcel/Constants.html"><CODE>Constants</CODE></A></DL></DD></DL><HR><A NAME="searchOpcode(java.lang.String)"><!-- --></A><H3>searchOpcode</H3><PRE>public static short <B>searchOpcode</B>(java.lang.String&nbsp;name)</PRE><DL><DD>Map opcode names to opcode numbers. E.g., return Constants.ALOAD for "aload"</DL><HR><A NAME="toHexString(byte[])"><!-- --></A><H3>toHexString</H3><PRE>public static final java.lang.String <B>toHexString</B>(byte[]&nbsp;bytes)</PRE><DL><DD>Convert bytes into hexidecimal string<DD><DL><DT><B>Returns:</B><DD>bytes as hexidecimal string, e.g. 00 FA 12 ...</DL></DD></DL><HR><A NAME="format(int, int, boolean, char)"><!-- --></A><H3>format</H3><PRE>public static final java.lang.String <B>format</B>(int&nbsp;i,                                            int&nbsp;length,                                            boolean&nbsp;left_justify,                                            char&nbsp;fill)</PRE><DL><DD>Return a string for an integer justified left or right and filled up with `fill' characters if necessary.<DD><DL><DT><B>Parameters:</B><DD><CODE>i</CODE> - integer to format<DD><CODE>length</CODE> - length of desired string<DD><CODE>left_justify</CODE> - format left or right<DD><CODE>fill</CODE> - fill character<DT><B>Returns:</B><DD>formatted int</DL></DD></DL><HR><A NAME="fillup(java.lang.String, int, boolean, char)"><!-- --></A><H3>fillup</H3><PRE>public static final java.lang.String <B>fillup</B>(java.lang.String&nbsp;str,                                            int&nbsp;length,                                            boolean&nbsp;left_justify,                                            char&nbsp;fill)</PRE><DL><DD>Fillup char with up to length characters with char `fill' and justify it left or right.<DD><DL><DT><B>Parameters:</B><DD><CODE>str</CODE> - string to format<DD><CODE>length</CODE> - length of desired string<DD><CODE>left_justify</CODE> - format left or right<DD><CODE>fill</CODE> - fill character<DT><B>Returns:</B><DD>formatted string</DL></DD></DL><HR><A NAME="printArray(java.io.PrintStream, java.lang.Object[])"><!-- --></A><H3>printArray</H3><PRE>public static final void <B>printArray</B>(java.io.PrintStream&nbsp;out,                                    java.lang.Object[]&nbsp;obj)</PRE><DL></DL><HR><A NAME="printArray(java.io.PrintWriter, java.lang.Object[])"><!-- --></A><H3>printArray</H3><PRE>public static final void <B>printArray</B>(java.io.PrintWriter&nbsp;out,                                    java.lang.Object[]&nbsp;obj)</PRE><DL></DL><HR><A NAME="printArray(java.lang.Object[])"><!-- --></A><H3>printArray</H3><PRE>public static final java.lang.String <B>printArray</B>(java.lang.Object[]&nbsp;obj)</PRE><DL></DL><HR><A NAME="printArray(java.lang.Object[], boolean)"><!-- --></A><H3>printArray</H3><PRE>public static final java.lang.String <B>printArray</B>(java.lang.Object[]&nbsp;obj,                                                boolean&nbsp;braces)</PRE><DL></DL><HR><A NAME="isJavaIdentifierPart(char)"><!-- --></A><H3>isJavaIdentifierPart</H3><PRE>public static boolean <B>isJavaIdentifierPart</B>(char&nbsp;ch)</PRE><DL><DD><DL><DT><B>Returns:</B><DD>true, if character is one of (a, ... z, A, ... Z, 0, ... 9, _)</DL></DD></DL><HR><A NAME="encode(byte[], boolean)"><!-- --></A><H3>encode</H3><PRE>public static java.lang.String <B>encode</B>(byte[]&nbsp;bytes,                                      boolean&nbsp;compress)                               throws java.io.IOException</PRE><DL><DD>Encode byte array it into Java identifier string, i.e., a string that only contains the following characters: (a, ... z, A, ... Z, 0, ... 9, _, $).  The encoding algorithm itself is not too clever: if the current byte's ASCII value already is a valid Java identifier part, leave it as it is. Otherwise it writes the escape character($) followed by <p><ul><li> the ASCII value as a hexadecimal string, if the value is not in the range 200..247</li> <li>a Java identifier char not used in a lowercase hexadecimal string, if the value is in the range 200..247</li><ul></p> <p>This operation inflates the original byte array by roughly 40-50%</p><DD><DL><DT><B>Parameters:</B><DD><CODE>bytes</CODE> - the byte array to convert<DD><CODE>compress</CODE> - use gzip to minimize string</DL></DD></DL><HR><A NAME="decode(java.lang.String, boolean)"><!-- --></A><H3>decode</H3><PRE>public static byte[] <B>decode</B>(java.lang.String&nbsp;s,                            boolean&nbsp;uncompress)                     throws java.io.IOException</PRE><DL><DD>Decode a string back to a byte array.<DD><DL><DT><B>Parameters:</B><DD><CODE>bytes</CODE> - the byte array to convert<DD><CODE>uncompress</CODE> - use gzip to uncompress the stream of bytes</DL></DD></DL><!-- ========= END OF CLASS DATA ========= --><HR><!-- ========== START OF NAVBAR ========== --><A NAME="navbar_bottom"><!-- --></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0"><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_bottom_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">  <TR ALIGN="center" VALIGN="top">  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Utility.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>  </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">&nbsp;<A HREF="../../../../org/apache/bcel/classfile/Unknown.html"><B>PREV CLASS</B></A>&nbsp;&nbsp;NEXT CLASS</FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;&nbsp;<A HREF="Utility.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: &nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><!-- =========== END OF NAVBAR =========== --><HR></BODY></HTML>

⌨️ 快捷键说明

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