{"id":62,"date":"2017-04-15T13:29:18","date_gmt":"2017-04-15T05:29:18","guid":{"rendered":"http:\/\/av16874667.imwork.net:13582\/?p=62"},"modified":"2017-04-15T13:29:18","modified_gmt":"2017-04-15T05:29:18","slug":"string-%e4%b8%8e%e5%90%84%e7%a7%8d%e8%bf%9b%e5%88%b6%e4%b9%8b%e9%97%b4%e7%9a%84%e8%bd%ac%e5%8c%96-%e6%9d%a5%e8%87%aa%e7%bd%91%e7%bb%9c","status":"publish","type":"post","link":"https:\/\/www.dd-home.top\/?p=62","title":{"rendered":"String \u4e0e\u5404\u79cd\u8fdb\u5236\u4e4b\u95f4\u7684\u8f6c\u5316-\u6765\u81ea\u7f51\u7edc"},"content":{"rendered":"<p><!--more--><\/p>\n<pre class=\"brush:java;toolbar:false\">package\u00a0com.nbad.register;\n\nimport\u00a0java.util.Calendar;\n\npublic\u00a0class\u00a0Test\u00a0{\n\tstatic\u00a0String\u00a0head\u00a0=\u00a0\"3A30313033\";\n\tstatic\u00a0String\u00a0footer\u00a0=\u00a0\"00000D0A\";\n\n\tpublic\u00a0static\u00a0void\u00a0main(String[]\u00a0args)\u00a0{\n\t\tint\u00a0beginCount\u00a0=\u00a010;\n\n\t\tCalendar\u00a0c\u00a0=\u00a0Calendar.getInstance();\n\t\tint\u00a0hh\u00a0=\u00a0c.get(Calendar.HOUR_OF_DAY);\n\t\tint\u00a0mm\u00a0=\u00a0c.get(Calendar.MINUTE);\n\n\t\tint\u00a0mms\u00a0=\u00a0hh\u00a0*\u00a060\u00a0+\u00a0mm;\n\t\tint\u00a0endCount\u00a0=\u00a0mms\u00a0\/\u00a05;\n\n\t\tint\u00a0beginStep\u00a0=\u00a010\u00a0*\u00a05;\n\n\t\tint\u00a0endStep\u00a0=\u00a0endCount\u00a0*\u00a05;\n\n\t\tString\u00a0s\u00a0\u00a0=\u00a0intiMiddle(beginStep,\u00a0798);\n\n\t\tSystem.out.println(\"\u5b8c\u6574\u7684\u6307\u4ee4\u5730\u5740:--------------\");\n\t\tSystem.out.println(s);\n\n\t\tString\u00a0s1\u00a0=\u00a0hexStr2Str(s);\n\t\tSystem.out.println(s1);\n\t\t\n\t\tSystem.out.println(str2HexStr(s1));\n\t\t\n\t\tSystem.out.println(\"--------------------------------------\");\n\t\t\n\t\tString\u00a0s_result=\"3A30313033313233343132333431323334333033303330333000000D0A\";\n\t\t\n\t\tSystem.out.println(hexStr2Str(s_result));\n\t\t\n\t\tSystem.out.println(hexStr2Str(head));\n\n\t}\n\n\tpublic\u00a0static\u00a0String\u00a0intiMiddle(int\u00a0beginStep,\u00a0int\u00a0endStep)\u00a0{\n\t\tSystem.out.println(\"\u5341\u8fdb\u5236\u7684\u8d77\u59cb\u5730\u5740:\"\u00a0+\u00a0beginStep);\n\t\tSystem.out.println(\"\u4e2a\u6570\"\u00a0+\u00a0endStep);\n\n\t\tString\u00a0begin\u00a0=\u00a0Integer.toHexString(beginStep);\n\t\tString\u00a0end\u00a0=\u00a0Integer.toHexString(endStep);\n\n\t\tString\u00a0begin_fix\u00a0=\u00a0pad(begin,\u00a04,\u00a0true);\n\t\tString\u00a0end_fix\u00a0=\u00a0pad(end,\u00a04,\u00a0true);\n\n\t\tSystem.out.println(\"\u5341\u516d\u8fdb\u5236\u8d77\u59cb\u5730\u5740:\"\u00a0+\u00a0begin_fix);\n\t\tSystem.out.println(\"\u5341\u516d\u8fdb\u5236\u4e2a\u6570:\"\u00a0+\u00a0end_fix);\n\n\t\tchar[]\u00a0begins\u00a0=\u00a0begin_fix.toCharArray();\n\t\tchar[]\u00a0ends\u00a0=\u00a0end_fix.toCharArray();\n\n\t\tString\u00a0begins_s\u00a0=\u00a0char2Ascii(begins);\n\t\tString\u00a0ends_s\u00a0=\u00a0char2Ascii(ends);\n\n\t\tSystem.out.println(\"ascii\u8d77\u59cb\u5730\u5740:\"\u00a0+\u00a0begins_s);\n\t\tSystem.out.println(\"ascii\u4e2a\u6570:\"\u00a0+\u00a0ends_s);\n\n\t\treturn\u00a0head\u00a0+\u00a0begins_s\u00a0+\u00a0ends_s\u00a0+\u00a0footer;\n\t}\n\n\tprivate\u00a0static\u00a0String\u00a0char2Ascii(char[]\u00a0array)\u00a0{\n\t\tStringBuffer\u00a0sb\u00a0=\u00a0new\u00a0StringBuffer();\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0array.length;\u00a0i++)\u00a0{\n\t\t\tString\u00a0s\u00a0=\u00a0Integer.toHexString(array[i]);\n\t\t\tsb.append(pad(s,\u00a02,\u00a0true));\n\t\t}\n\t\treturn\u00a0sb.toString();\n\t}\n\n\tpublic\u00a0static\u00a0String\u00a0pad(String\u00a0str,\u00a0int\u00a0size,\u00a0boolean\u00a0isprefixed)\u00a0{\n\t\tif\u00a0(str\u00a0==\u00a0null)\n\t\t\tstr\u00a0=\u00a0\"\";\n\t\tint\u00a0str_size\u00a0=\u00a0str.length();\n\t\tint\u00a0pad_len\u00a0=\u00a0size\u00a0-\u00a0str_size;\n\t\tStringBuffer\u00a0retvalue\u00a0=\u00a0new\u00a0StringBuffer();\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0pad_len;\u00a0i++)\u00a0{\n\t\t\tretvalue.append(\"0\");\n\t\t}\n\t\tif\u00a0(isprefixed)\n\t\t\treturn\u00a0retvalue.append(str).toString();\n\t\treturn\u00a0retvalue.insert(0,\u00a0str).toString();\n\t}\n\n\t\/**\n\t\u00a0*\u00a0\u5b57\u7b26\u4e32\u8f6c\u6362\u6210\u5341\u516d\u8fdb\u5236\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0String\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0str\u00a0\u5f85\u8f6c\u6362\u7684ASCII\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0@return\u00a0String\u00a0\u6bcf\u4e2aByte\u4e4b\u95f4\u7a7a\u683c\u5206\u9694\uff0c\u5982:\u00a0[61\u00a06C\u00a06B]\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0String\u00a0str2HexStr(String\u00a0str)\u00a0{\n\n\t\tchar[]\u00a0chars\u00a0=\u00a0\"0123456789ABCDEF\".toCharArray();\n\t\tStringBuilder\u00a0sb\u00a0=\u00a0new\u00a0StringBuilder(\"\");\n\t\tbyte[]\u00a0bs\u00a0=\u00a0str.getBytes();\n\t\tint\u00a0bit;\n\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0bs.length;\u00a0i++)\u00a0{\n\t\t\tbit\u00a0=\u00a0(bs[i]\u00a0&amp;\u00a00x0f0)\u00a0&gt;&gt;\u00a04;\n\t\t\tsb.append(chars[bit]);\n\t\t\tbit\u00a0=\u00a0bs[i]\u00a0&amp;\u00a00x0f;\n\t\t\tsb.append(chars[bit]);\n\t\t\tsb.append('\u00a0');\n\t\t}\n\t\treturn\u00a0sb.toString().trim();\n\t}\n\n\t\/**\n\t\u00a0*\u00a0\u5341\u516d\u8fdb\u5236\u8f6c\u6362\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0String\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0str\u00a0Byte\u5b57\u7b26\u4e32(Byte\u4e4b\u95f4\u65e0\u5206\u9694\u7b26\u00a0\u5982:[616C6B])\n\t\u00a0*\u00a0@return\u00a0String\u00a0\u5bf9\u5e94\u7684\u5b57\u7b26\u4e32\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0String\u00a0hexStr2Str(String\u00a0hexStr)\u00a0{\n\t\tString\u00a0str\u00a0=\u00a0\"0123456789ABCDEF\";\n\t\tchar[]\u00a0hexs\u00a0=\u00a0hexStr.toCharArray();\n\t\tbyte[]\u00a0bytes\u00a0=\u00a0new\u00a0byte[hexStr.length()\u00a0\/\u00a02];\n\t\tint\u00a0n;\n\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0bytes.length;\u00a0i++)\u00a0{\n\t\t\tn\u00a0=\u00a0str.indexOf(hexs[2\u00a0*\u00a0i])\u00a0*\u00a016;\n\t\t\tn\u00a0+=\u00a0str.indexOf(hexs[2\u00a0*\u00a0i\u00a0+\u00a01]);\n\t\t\tbytes[i]\u00a0=\u00a0(byte)\u00a0(n\u00a0&amp;\u00a00xff);\n\t\t}\n\t\treturn\u00a0new\u00a0String(bytes);\n\t}\n\n\t\/**\n\t\u00a0*\u00a0bytes\u8f6c\u6362\u6210\u5341\u516d\u8fdb\u5236\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0byte[]\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0b\u00a0byte\u6570\u7ec4\n\t\u00a0*\u00a0@return\u00a0String\u00a0\u6bcf\u4e2aByte\u503c\u4e4b\u95f4\u7a7a\u683c\u5206\u9694\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0String\u00a0byte2HexStr(byte[]\u00a0b)\u00a0{\n\t\tString\u00a0stmp\u00a0=\u00a0\"\";\n\t\tStringBuilder\u00a0sb\u00a0=\u00a0new\u00a0StringBuilder(\"\");\n\t\tfor\u00a0(int\u00a0n\u00a0=\u00a00;\u00a0n\u00a0&lt;\u00a0b.length;\u00a0n++)\u00a0{\n\t\t\tstmp\u00a0=\u00a0Integer.toHexString(b[n]\u00a0&amp;\u00a00xFF);\n\t\t\tsb.append((stmp.length()\u00a0==\u00a01)\u00a0?\u00a0\"0\"\u00a0+\u00a0stmp\u00a0:\u00a0stmp);\n\t\t\tsb.append(\"\u00a0\");\n\t\t}\n\t\treturn\u00a0sb.toString().toUpperCase().trim();\n\t}\n\n\t\/**\n\t\u00a0*\u00a0bytes\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3aByte\u503c\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0String\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0src\u00a0Byte\u5b57\u7b26\u4e32\uff0c\u6bcf\u4e2aByte\u4e4b\u95f4\u6ca1\u6709\u5206\u9694\u7b26\n\t\u00a0*\u00a0@return\u00a0byte[]\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0byte[]\u00a0hexStr2Bytes(String\u00a0src)\u00a0{\n\t\tint\u00a0m\u00a0=\u00a00,\u00a0n\u00a0=\u00a00;\n\t\tint\u00a0l\u00a0=\u00a0src.length()\u00a0\/\u00a02;\n\t\tSystem.out.println(l);\n\t\tbyte[]\u00a0ret\u00a0=\u00a0new\u00a0byte[l];\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0l;\u00a0i++)\u00a0{\n\t\t\tm\u00a0=\u00a0i\u00a0*\u00a02\u00a0+\u00a01;\n\t\t\tn\u00a0=\u00a0m\u00a0+\u00a01;\n\t\t\tret[i]\u00a0=\u00a0Byte.decode(\"0x\"\u00a0+\u00a0src.substring(i\u00a0*\u00a02,\u00a0m)\u00a0+\u00a0src.substring(m,\u00a0n));\n\t\t}\n\t\treturn\u00a0ret;\n\t}\n\n\t\/**\n\t\u00a0*\u00a0String\u7684\u5b57\u7b26\u4e32\u8f6c\u6362\u6210unicode\u7684String\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0String\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0strText\u00a0\u5168\u89d2\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0@return\u00a0String\u00a0\u6bcf\u4e2aunicode\u4e4b\u95f4\u65e0\u5206\u9694\u7b26\n\t\u00a0*\u00a0@throws\u00a0Exception\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0String\u00a0strToUnicode(String\u00a0strText)\u00a0throws\u00a0Exception\u00a0{\n\t\tchar\u00a0c;\n\t\tStringBuilder\u00a0str\u00a0=\u00a0new\u00a0StringBuilder();\n\t\tint\u00a0intAsc;\n\t\tString\u00a0strHex;\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0strText.length();\u00a0i++)\u00a0{\n\t\t\tc\u00a0=\u00a0strText.charAt(i);\n\t\t\tintAsc\u00a0=\u00a0(int)\u00a0c;\n\t\t\tstrHex\u00a0=\u00a0Integer.toHexString(intAsc);\n\t\t\tif\u00a0(intAsc\u00a0&gt;\u00a0128)\n\t\t\t\tstr.append(\"\\u\"\u00a0+\u00a0strHex);\n\t\t\telse\u00a0\/\/\u00a0\u4f4e\u4f4d\u5728\u524d\u9762\u886500\n\t\t\t\tstr.append(\"\\u00\"\u00a0+\u00a0strHex);\n\t\t}\n\t\treturn\u00a0str.toString();\n\t}\n\n\t\/**\n\t\u00a0*\u00a0unicode\u7684String\u8f6c\u6362\u6210String\u7684\u5b57\u7b26\u4e32\n\t\u00a0*\u00a0\n\t\u00a0*\u00a0@param\u00a0String\n\t\u00a0*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0hex\u00a016\u8fdb\u5236\u503c\u5b57\u7b26\u4e32\u00a0\uff08\u4e00\u4e2aunicode\u4e3a2byte\uff09\n\t\u00a0*\u00a0@return\u00a0String\u00a0\u5168\u89d2\u5b57\u7b26\u4e32\n\t\u00a0*\/\n\tpublic\u00a0static\u00a0String\u00a0unicodeToString(String\u00a0hex)\u00a0{\n\t\tint\u00a0t\u00a0=\u00a0hex.length()\u00a0\/\u00a06;\n\t\tStringBuilder\u00a0str\u00a0=\u00a0new\u00a0StringBuilder();\n\t\tfor\u00a0(int\u00a0i\u00a0=\u00a00;\u00a0i\u00a0&lt;\u00a0t;\u00a0i++)\u00a0{\n\t\t\tString\u00a0s\u00a0=\u00a0hex.substring(i\u00a0*\u00a06,\u00a0(i\u00a0+\u00a01)\u00a0*\u00a06);\n\t\t\t\/\/\u00a0\u9ad8\u4f4d\u9700\u8981\u8865\u4e0a00\u518d\u8f6c\n\t\t\tString\u00a0s1\u00a0=\u00a0s.substring(2,\u00a04)\u00a0+\u00a0\"00\";\n\t\t\t\/\/\u00a0\u4f4e\u4f4d\u76f4\u63a5\u8f6c\n\t\t\tString\u00a0s2\u00a0=\u00a0s.substring(4);\n\t\t\t\/\/\u00a0\u5c0616\u8fdb\u5236\u7684string\u8f6c\u4e3aint\n\t\t\tint\u00a0n\u00a0=\u00a0Integer.valueOf(s1,\u00a016)\u00a0+\u00a0Integer.valueOf(s2,\u00a016);\n\t\t\t\/\/\u00a0\u5c06int\u8f6c\u6362\u4e3a\u5b57\u7b26\n\t\t\tchar[]\u00a0chars\u00a0=\u00a0Character.toChars(n);\n\t\t\tstr.append(new\u00a0String(chars));\n\t\t}\n\t\treturn\u00a0str.toString();\n\t}\n\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[56,65],"class_list":["post-62","post","type-post","status-publish","format-standard","hentry","category-java","tag-string","tag-65"],"_links":{"self":[{"href":"https:\/\/www.dd-home.top\/index.php?rest_route=\/wp\/v2\/posts\/62","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dd-home.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dd-home.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dd-home.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dd-home.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=62"}],"version-history":[{"count":0,"href":"https:\/\/www.dd-home.top\/index.php?rest_route=\/wp\/v2\/posts\/62\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dd-home.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=62"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dd-home.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=62"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dd-home.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=62"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}