<p><br/>import java.io.ByteArrayInputStream;</p><br/><p><br/>import java.io.ByteArrayOutputStream;<br/>import java.io.IOException;<br/>import java.util.zip.GZIPInputStream;<br/>import java.util.zip.GZIPOutputStream;<br/><br/>public class GZIPUtils&nbsp; {<br/>&nbsp;&nbsp;&nbsp; public static final String GZIP_ENCODE_UTF_8 = &quot;UTF-8&quot;;<br/><br/>&nbsp;&nbsp;&nbsp; public static byte[] compress(String str, String encoding) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str == null || str.length() == 0) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ByteArrayOutputStream out = new ByteArrayOutputStream();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GZIPOutputStream gzip;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gzip = new GZIPOutputStream(out);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gzip.write(str.getBytes(encoding));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gzip.close();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch ( Exception e) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return out.toByteArray();<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static byte[] compress(String str) throws IOException {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /str = URLEncoder.encode(str, GZIP_ENCODE_UTF_8);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return compress(str, GZIP_ENCODE_UTF_8);<br/>&nbsp;&nbsp;&nbsp; }<br/><br/><br/>&nbsp;&nbsp;&nbsp; public static byte[] uncompress(byte[] bytes) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (bytes == null || bytes.length == 0) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ByteArrayOutputStream out = new ByteArrayOutputStream();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ByteArrayInputStream in = new ByteArrayInputStream(bytes);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GZIPInputStream ungzip = new GZIPInputStream(in);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] buffer = new byte[256];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int n;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while n = ungzip.read(buffer &gt;= 0) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.write(buffer, 0, n);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception e) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return out.toByteArray();<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static String uncompressToString(byte[] bytes, String encoding) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (bytes == null || bytes.length == 0) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ByteArrayOutputStream out = new ByteArrayOutputStream();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ByteArrayInputStream in = new ByteArrayInputStream(bytes);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GZIPInputStream ungzip = new GZIPInputStream(in);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] buffer = new byte[256];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int n;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while n = ungzip.read(buffer &gt;= 0) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.write(buffer, 0, n);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return out.toString(encoding);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception e) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static String uncompressToString(byte[] bytes) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return uncompressToString(bytes, GZIP_ENCODE_UTF_8);<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static String toString(byte[] bytes) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return org.apache.commons.codec.binary.Base64.encodeBase64String(bytes);<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static byte[] decodeToString(String bytes) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return org.apache.commons.codec.binary.Base64.decodeBase64(bytes);<br/>&nbsp;&nbsp;&nbsp; }<br/><br/>&nbsp;&nbsp;&nbsp; public static void main(String[] args) throws IOException {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*String s = &quot;{\&quot;navigate\&quot;:\&quot;POSLOGIN\&quot;,\&quot;userInfo\&quot;:{\&quot;sysDate\&quot;:1575540038000,\&quot;userFlag\&quot;:\&quot;Y\&quot;,\&quot;orderType\&quot;:\&quot;\&quot;,\&quot;lastURL\&quot;:\&quot;\&quot;,\&quot;shopName\&quot;:\&quot;安麗體驗廣場\&quot;,\&quot;saleDate\&quot;:1575475200000,\&quot;locale\&quot;:\&quot;zh_TW\&quot;,\&quot;orderChannel\&quot;:\&quot;POS\&quot;,\&quot;lastDateForMonth\&quot;:1577807999000,\&quot;regionCode\&quot;:\&quot;130\&quot;,\&quot;staffName\&quot;:\&quot;邱信展2\&quot;,\&quot;logonPosFlag\&quot;:\&quot;Y\&quot;,\&quot;startTime\&quot;:1575540038000,\&quot;integerFirstDateForMonth\&quot;:20191201,\&quot;posSequence\&quot;:0,\&quot;saleDateInt\&quot;:20191205,\&quot;shopCode\&quot;:\&quot;01\&quot;,\&quot;firstDateForMonth\&quot;:1575129600000,\&quot;cardHiddenFlag\&quot;:\&quot;N\&quot;,\&quot;preference\&quot;:{\&quot;dateFormatInput\&quot;:\&quot;yyyyMMdd\&quot;,\&quot;currencyFormatD3\&quot;:\&quot;#,##0.000\&quot;,\&quot;currencyFormatD2\&quot;:\&quot;#,##0.00\&quot;,\&quot;dateFormat\&quot;:\&quot;yyyy-MM-dd\&quot;,\&quot;currencyFormatD0\&quot;:\&quot;#,##0\&quot;,\&quot;timeFormat\&quot;:\&quot;HH:mm:ss\&quot;,\&quot;dateAndTimeFormat\&quot;:\&quot;MM-dd HH:mm\&quot;},\&quot;idHiddenFlag\&quot;:\&quot;N\&quot;,\&quot;sysDateInt\&quot;:20191205,\&quot;privilegeInited\&quot;:false,\&quot;staffNumber\&quot;:\&quot;QIU02\&quot;,\&quot;orderDivFlowList\&quot;:[],\&quot;posCode\&quot;:\&quot;T003\&quot;,\&quot;inValidPrivHotKeyStrSet\&quot;:[\&quot;A01\&quot;],\&quot;intSaleDateTW\&quot;:1191205,\&quot;currencyCode\&quot;:\&quot;NTD\&quot;,\&quot;integerLastDateForMonth\&quot;:20191231}}&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;字符串长度:&quot;+s.length());<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;字符长度byte:&quot;+&nbsp;&nbsp; s.getBytes(&quot;UTF-8&quot;).length);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String cstr = GZIPUtils.toString( compress(s));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cstr = new String( compress(s));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;byse64压缩后String::&quot;+ cstr );<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;byse64压缩后ByteLength::&quot;+ cstr.getBytes(&quot;UTF-8&quot;).length);<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;压缩后byte::&quot;+compress(s).length);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;解压后byte:&quot;+uncompress(compress(s)).length);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;解压字符串后::&quot;+uncompressToString(compress(s)));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;解压字符串后::&quot;+toString(compress(s)));<br/>*/<br/><br/>&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp; }<br/><br/>}<br/></p><p><br/></p><p><br/></p><p><br/></p><p><br/></p><p>=====================================================================</p><p><br/></p><p style="line-height: 16px;"><img src="https://wiki.gddlh.com/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif"/><a style="font-size:12px; color:#0066cc;" href="https://wiki.gddlh.com/ueditor/php/upload/file/20200303/1583223414771695.html" title="pako.html">pako.html</a></p><p style="line-height: 16px;"><img src="https://wiki.gddlh.com/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif"/><a style="font-size:12px; color:#0066cc;" href="https://wiki.gddlh.com/ueditor/php/upload/file/20200303/1583223414929887.js" title="pako.js">pako.js</a></p><p>&lt;!DOCTYPE html&gt;<br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&nbsp; &lt;meta charset=&quot;UTF-8&quot;&gt;<br/>&nbsp; &lt;title&gt;pako.js实现gzip的压缩和解压&lt;/title&gt;<br/>&lt;/head&gt;<br/>&lt;body&gt;<br/>&lt;script type=&quot;text/javascript&quot; src=&quot;pako.js&quot;&gt;&lt;/script&gt;<br/>&lt;script &gt;<br/>var b64Data&nbsp;&nbsp; = &#39;H4sIAAAAAAAAAG1ST4/SQBT/Kma4smZaFll62yxBGimLtqsxZmNGZgqTtDN1ZsCwhIs375q9ajwZE5NNPOnBLyMHvoVv2imQRQ4kze/fm/d7KyTIgk+JYShA48t4ePk4HKEmmmumQpFKFKyQXupeSfDanXb7FOPWGca44vQzMgXlS5BIRZlKloV1gs+MaHP1bFh96JksRiS30ObHh+2v2+33j9tvt5vfXzeff1qcZGyfcdpp+xiXGZmcAASym9nr5EWdcjEjQrCsGtllWXlfqkgKMyttOme40+12SxvFplyKC0mtldfCNtKQNHUzbd/f/f3zZXP3ybdmcirFWOqDpwFXmYTnxzvgwrAprIGr+xP42Ot68NdEhdQxeztnYgJ6vH9sKMyO1q525CbEHoSmx5423PO7j9xyJkTRAaeUCTerba5QLGWqClshWulzYkJRzCEPLeEXRZQCdTJXlrisCL0WoI1mo4Efgvsx7B/AgO6dnelJFJ38zxbXOoAM7HAnGgyCPA+0dmbngiaHcGn3oCShNWz6+KnuMO/tsVB8wTNoJRTcMIqClGSa1YXP8zdMgf5peIX9+p56fNHP5Lsh1+D06rqszFWRQNXI9vycZJyOwXsgzRO2jI2KmWWjc2jruryE2BULhxp49Tj1NpzfKOmh3dkMj+62ekbLW6AT9C+HuaAwAA&#39;;<br/>var ticketData = &#39;{&quot;ed&quot;:&quot;20170121 09:44:01&quot;,&quot;fs&quot;:[{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;003&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;005&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;004&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;007&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;008&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;026&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;033&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;034&quot;,&quot;oids&quot;:[&quot;0&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;035&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;037&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;038&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;041&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;042&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;047&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;046&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;048&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;051&quot;,&quot;oids&quot;:[&quot;1&quot;]},{&quot;usg&quot;:[1,1,1,1,1,1,1],&quot;act&quot;:0,&quot;fid&quot;:&quot;053&quot;,&quot;oids&quot;:[&quot;4&quot;]}],&quot;qty&quot;:1,&quot;sd&quot;:&quot;20161021 09:44:01&quot;,&quot;cd&quot;:&quot;72016102116762039687&quot;}&#39;;<br/><br/>var han = &quot;就是qwqw上来就发上来快点减肥蓝色的就疯了似的&quot;;<br/> Output to console<br/>var ehan = zip(han);<br/>var s =&nbsp; unzip(b64Data) ;<br/>console.log(&quot;unzipped:&quot;);<br/>console.log(s);<br/>console.log(&quot;中午&quot;);<br/>document.write(han+&quot;&lt;br/&gt;&quot;);<br/>document.write(s);<br/>var data = zip(ticketData);<br/>console.log(&quot;zipped:&quot;);<br/>console.log(data);<br/>function unzip(b64Data){<br/>&nbsp; var strData&nbsp;&nbsp; = atob(b64Data);<br/>&nbsp; Convert binary string to character-number array<br/>&nbsp; var charData&nbsp; = strData.split(&#39;&#39;).map(function(x){return x.charCodeAt(0);});<br/>&nbsp; Turn number array into byte-array<br/>&nbsp; var binData&nbsp;&nbsp; = new Uint8Array(charData);<br/>&nbsp; unzip<br/>&nbsp; var data&nbsp;&nbsp;&nbsp; = pako.inflate(binData);<br/>&nbsp; Convert gunzipped byteArray back to ascii string:<br/>&nbsp; strData&nbsp;&nbsp; = String.fromCharCode.apply(null, new Uint16Array(data));<br/>&nbsp; Convert gunzipped byteArray back to utf8 string:<br/>&nbsp; strData = byteToUtf8String(data);<br/>&nbsp; return strData;<br/>}<br/>function zip(str){<br/>&nbsp; var binaryString = pako.gzip(str, { to: &#39;string&#39; });<br/>&nbsp; return btoa(binaryString);<br/>}<br/><br/><br/>function byteToUtf8String(arr) {<br/>&nbsp;&nbsp; &nbsp;if(typeof arr === &#39;string&#39;) {<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return arr;<br/>&nbsp;&nbsp; &nbsp;}<br/>&nbsp;&nbsp; &nbsp;var str = &#39;&#39;,<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;_arr = arr;<br/>&nbsp;&nbsp; &nbsp;for(var i = 0; i &lt; _arr.length; i++) {<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;var one = _arr[i].toString(2),<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;v = one.match(/^1+?(?=0)/);<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if(v &amp;&amp; one.length == 8) {<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;var bytesLength = v[0].length;<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;var store = _arr[i].toString(2).slice(7 - bytesLength);<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;for(var st = 1; st &lt; bytesLength; st++) {<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;store += _arr[st + i].toString(2).slice(2);<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;str += String.fromCharCode(parseInt(store, 2));<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;i += bytesLength - 1;<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;} else {<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;str += String.fromCharCode(_arr[i]);<br/>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br/>&nbsp;&nbsp; &nbsp;}<br/>&nbsp;&nbsp; &nbsp;return str;<br/>}<br/>&lt;/script&gt;<br/><br/>=========<br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/><br/></p>