annyoung

[AutoHotKey Header] EUC-KR Encode, Decode.ahk 본문

프로그래밍

[AutoHotKey Header] EUC-KR Encode, Decode.ahk

nopsled 2014. 3. 14. 09:09


 

EUC.ahk


EucEncode( p_data, p_reserved=true, p_encode=true )

{

   old_FormatInteger := A_FormatInteger

   SetFormat, Integer, hex


   unsafe =

      ( Join LTrim

         25000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20

         22233C3E5B5C5D5E607B7C7D7F808182838485868788898A8B8C8D8E8F9091929394

         95969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6

         B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8

         D9DADBDCDDDEDF7EE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9

         FAFBFCFDFEFF

      )

       

   if ( p_reserved )

      unsafe = %unsafe%24262B2C2F3A3B3D3F40

   

   if ( p_encode )

      loop, % StrLen( unsafe )//2

      {

         StringMid, token, unsafe, A_Index*2-1, 2

         StringReplace, p_data, p_data, % Chr( "0x" token ), `%%token%, all

      }

   else

      loop, % StrLen( unsafe )//2

      {

         StringMid, token, unsafe, A_Index*2-1, 2

         StringReplace, p_data, p_data, `%%token%, % Chr( "0x" token ), all

      }

       

   SetFormat, Integer, %old_FormatInteger%


   return, p_data

}


EucDecode( p_data )

{

   return, EucEncode( p_data, true, false )

}  

 

 Description : EUC-KR로 인코딩하거나 디코딩할때 사용하는 함수입니다.

 AHK_B, AHK_L 모두 사용 가능한 함수입니다.



'프로그래밍' 카테고리의 다른 글

php MD5  (0) 2014.03.30
Microsoft-IIS/6.0 webdav remote authentication bypass scanner v0.1  (0) 2014.03.28
[AutoHotKey Header] UTF8Encode, UTF8Decode.ahk  (1) 2014.03.14
[AutoHotKey Header] MD5.ahk  (0) 2014.03.14
[AutoHotKey Header] COM.ahk  (0) 2014.03.14
Comments