160 => á => A0 procuro funcao me retorne "A0"
asc -> chr-> exa ?
existe
Moderador: Moderadores

Código: Selecionar todos
* AUTOR: ANDERSON CARDOSO SILVA
* www.caclipperwebsite.com
*******************************
CLS
? 23870, " EM DECIMAL : ", DEC2HEX(23870)
? 188, " EM DECIMAL : ", DEC2HEX(188)
QUIT
FUNCTION DEC2HEX(nDEC)
cHEX :=""
IF VALTYPE(nDEC)="N"
aBASE16 := {"0","1","2","3","4","5","6","7","8","9",;
"A","B","C","D","E","F"}
aHEX := {}
nDIVIDENDO := nDEC
nQUOCIENTE := 1
DO WHILE nQUOCIENTE # 0
nQUOCIENTE := INT(nDIVIDENDO/16)
nRESTO := nDIVIDENDO % 16
nRESTO++ // SOMA 1 PORQUE aBASE16 COMECA COM "0" E NAO "1"
cHEX := aBASE16[nRESTO]
aADD(aHEX, cHEX)
nDIVIDENDO := nQUOCIENTE
ENDDO
ENDIF
cHEX := ""
FOR X=LEN(aHEX) TO 1 STEP -1
cHEX += aHEX[X]
NEXT
RETURN cHEX

Código: Selecionar todos
STATIC FUNCTION DecTOWhat( Oque, ParaQue )
**************************************************************
* HexaDecimal 1
* Caracter 2
* URL 3
* Binario 4
* Octal 5
**************************************************************
local aDecTOWhat := {}
aadd( aDecTOWhat, { 32, "20", " ", "%20", "010 0000", "40" } )
aadd( aDecTOWhat, { 33, "21", "!", "%21", "010 0001", "41" } )
aadd( aDecTOWhat, { 34, "22", ["], "%22", "010 0010", "42" } )
aadd( aDecTOWhat, { 35, "23", "#", "%23", "010 0011", "43" } )
aadd( aDecTOWhat, { 36, "24", "$", "%24", "010 0100", "44" } )
aadd( aDecTOWhat, { 37, "25", "%", "%25", "010 0101", "45" } )
aadd( aDecTOWhat, { 38, "26", "&", "%26", "010 0110", "46" } )
aadd( aDecTOWhat, { 39, "27", "'", "%27", "010 0111", "47" } )
aadd( aDecTOWhat, { 40, "28", "(", "%28", "010 1000", "50" } )
aadd( aDecTOWhat, { 41, "29", ")", "%29", "010 1001", "51" } )
aadd( aDecTOWhat, { 42, "2A", "*", "%2A", "010 1010", "52" } )
aadd( aDecTOWhat, { 43, "2B", "+", "%2B", "010 1011", "53" } )
aadd( aDecTOWhat, { 44, "2C", ",", "%2C", "010 1100", "54" } )
aadd( aDecTOWhat, { 45, "2D", "-", "%2D", "010 1101", "55" } )
aadd( aDecTOWhat, { 46, "2E", ".", "%2E", "010 1110", "56" } )
aadd( aDecTOWhat, { 47, "2F", "/", "%2F", "010 1111", "57" } )
aadd( aDecTOWhat, { 48, "30", "0", "%30", "011 0000", "60" } )
aadd( aDecTOWhat, { 49, "31", "1", "%31", "011 0001", "61" } )
aadd( aDecTOWhat, { 50, "32", "2", "%32", "011 0010", "62" } )
aadd( aDecTOWhat, { 51, "33", "3", "%33", "011 0011", "63" } )
aadd( aDecTOWhat, { 52, "34", "4", "%34", "011 0100", "64" } )
aadd( aDecTOWhat, { 53, "35", "5", "%35", "011 0101", "65" } )
aadd( aDecTOWhat, { 54, "36", "6", "%36", "011 0110", "66" } )
aadd( aDecTOWhat, { 55, "37", "7", "%37", "011 0111", "67" } )
aadd( aDecTOWhat, { 56, "38", "8", "%38", "011 1000", "70" } )
aadd( aDecTOWhat, { 57, "39", "9", "%39", "011 1001", "71" } )
aadd( aDecTOWhat, { 58, "3A", ":", "%3A", "011 1010", "72" } )
aadd( aDecTOWhat, { 59, "3B", ";", "%3B", "011 1011", "73" } )
aadd( aDecTOWhat, { 60, "3C", "<", "%3C", "011 1100", "74" } )
aadd( aDecTOWhat, { 61, "3D", "=", "%3D", "011 1101", "75" } )
aadd( aDecTOWhat, { 62, "3E", ">", "%3E", "011 1110", "76" } )
aadd( aDecTOWhat, { 63, "3F", "?", "%3F", "011 1111", "77" } )
aadd( aDecTOWhat, { 64, "40", "@", "%40", "100 0000", "100" } )
aadd( aDecTOWhat, { 65, "41", "A", "%41", "100 0001", "101" } )
aadd( aDecTOWhat, { 66, "42", "B", "%42", "100 0010", "102" } )
aadd( aDecTOWhat, { 67, "43", "C", "%43", "100 0011", "103" } )
aadd( aDecTOWhat, { 68, "44", "D", "%44", "100 0100", "104" } )
aadd( aDecTOWhat, { 69, "45", "E", "%45", "100 0101", "105" } )
aadd( aDecTOWhat, { 70, "46", "F", "%46", "100 0110", "106" } )
aadd( aDecTOWhat, { 71, "47", "G", "%47", "100 0111", "107" } )
aadd( aDecTOWhat, { 72, "48", "H", "%48", "100 1000", "110" } )
aadd( aDecTOWhat, { 73, "49", "I", "%49", "100 1001", "111" } )
aadd( aDecTOWhat, { 74, "4A", "J", "%4A", "100 1010", "112" } )
aadd( aDecTOWhat, { 75, "4B", "K", "%4B", "100 1011", "113" } )
aadd( aDecTOWhat, { 76, "4C", "L", "%4C", "100 1100", "114" } )
aadd( aDecTOWhat, { 77, "4D", "M", "%4D", "100 1101", "115" } )
aadd( aDecTOWhat, { 78, "4E", "N", "%4E", "100 1110", "116" } )
aadd( aDecTOWhat, { 79, "4F", "O", "%4F", "100 1111", "117" } )
aadd( aDecTOWhat, { 80, "50", "P", "%50", "101 0000", "120" } )
aadd( aDecTOWhat, { 81, "51", "Q", "%51", "101 0001", "121" } )
aadd( aDecTOWhat, { 82, "52", "R", "%52", "101 0010", "122" } )
aadd( aDecTOWhat, { 83, "53", "S", "%53", "101 0011", "123" } )
aadd( aDecTOWhat, { 84, "54", "T", "%54", "101 0100", "124" } )
aadd( aDecTOWhat, { 85, "55", "U", "%55", "101 0101", "125" } )
aadd( aDecTOWhat, { 86, "56", "V", "%56", "101 0110", "126" } )
aadd( aDecTOWhat, { 87, "57", "W", "%57", "101 0111", "127" } )
aadd( aDecTOWhat, { 88, "58", "X", "%58", "101 1000", "130" } )
aadd( aDecTOWhat, { 89, "59", "Y", "%59", "101 1001", "131" } )
aadd( aDecTOWhat, { 90, "5A", "Z", "%5A", "101 1010", "132" } )
aadd( aDecTOWhat, { 91, "5B", "[", "%5B", "101 1011", "133" } )
aadd( aDecTOWhat, { 92, "5C", "\", "%5C", "101 1100", "134" } )
aadd( aDecTOWhat, { 93, "5D", "]", "%5D", "101 1101", "135" } )
aadd( aDecTOWhat, { 94, "5E", "^", "%5E", "101 1110", "136" } )
aadd( aDecTOWhat, { 95, "5F", "_", "%5F", "101 1111", "137" } )
aadd( aDecTOWhat, { 96, "60", "`", "%60", "110 0000", "140" } )
aadd( aDecTOWhat, { 97, "61", "a", "%61", "110 0001", "141" } )
aadd( aDecTOWhat, { 98, "62", "b", "%62", "110 0010", "142" } )
aadd( aDecTOWhat, { 99, "63", "c", "%63", "110 0011", "143" } )
aadd( aDecTOWhat, { 100, "64", "d", "%64", "110 0100", "144" } )
aadd( aDecTOWhat, { 101, "65", "e", "%65", "110 0101", "145" } )
aadd( aDecTOWhat, { 102, "66", "f", "%66", "110 0110", "146" } )
aadd( aDecTOWhat, { 103, "67", "g", "%67", "110 0111", "147" } )
aadd( aDecTOWhat, { 104, "68", "h", "%68", "110 1000", "150" } )
aadd( aDecTOWhat, { 105, "69", "i", "%69", "110 1001", "151" } )
aadd( aDecTOWhat, { 106, "6A", "j", "%6A", "110 1010", "152" } )
aadd( aDecTOWhat, { 107, "6B", "k", "%6B", "110 1011", "153" } )
aadd( aDecTOWhat, { 108, "6C", "l", "%6C", "110 1100", "154" } )
aadd( aDecTOWhat, { 109, "6D", "m", "%6D", "110 1101", "155" } )
aadd( aDecTOWhat, { 110, "6E", "n", "%6E", "110 1110", "156" } )
aadd( aDecTOWhat, { 111, "6F", "o", "%6F", "110 1111", "157" } )
aadd( aDecTOWhat, { 112, "70", "p", "%70", "111 0000", "160" } )
aadd( aDecTOWhat, { 113, "71", "q", "%71", "111 0001", "161" } )
aadd( aDecTOWhat, { 114, "72", "r", "%72", "111 0010", "162" } )
aadd( aDecTOWhat, { 115, "73", "s", "%73", "111 0011", "163" } )
aadd( aDecTOWhat, { 116, "74", "t", "%74", "111 0100", "164" } )
aadd( aDecTOWhat, { 117, "75", "u", "%75", "111 0101", "165" } )
aadd( aDecTOWhat, { 118, "76", "v", "%76", "111 0110", "166" } )
aadd( aDecTOWhat, { 119, "77", "w", "%77", "111 0111", "167" } )
aadd( aDecTOWhat, { 120, "78", "x", "%78", "111 1000", "170" } )
aadd( aDecTOWhat, { 121, "79", "y", "%79", "111 1001", "171" } )
aadd( aDecTOWhat, { 122, "7A", "z", "%7A", "111 1010", "172" } )
aadd( aDecTOWhat, { 123, "7B", "{", "%7B", "111 1011", "173" } )
aadd( aDecTOWhat, { 124, "7C", "|", "%7C", "111 1100", "174" } )
aadd( aDecTOWhat, { 125, "7D", "}", "%7D", "111 1101", "175" } )
aadd( aDecTOWhat, { 126, "7E", "~", "%7E", "111 1110", "176" } )
nDecTOWhat := ascan( aDecTOWhat, { |x| x[1] = Oque } )
IF nDecTOWhat <> 0
return aDecTOWhat[ nDecTOWhat ][ ParaQue ]
ENDIF
RETURN ""
Código: Selecionar todos
FUNCTION FTAB_ASC()
PRIVATE num_asc,c1
tab_asc:= {}
for num_asc = 1 TO 255
aadd( tab_asc, chr(num_asc) )
next
do case
case OPCAO_PRN = 'I' .AND. IMPRESS = 'M'
c08:= chr(08) && comando que retroage o carro da impressora para acentuar
c39:= chr(39) && acento agudo
c94:= chr(94) && acento circunflexo
c96:= chr(96) && acento aspas
c126:= chr(126) && acento til
c44:= chr(44) && cecidilha
*------
tab_asc[160]:= 'a' + c08 + c39
tab_asc[130]:= 'e' + c08 + c39
tab_asc[161]:= 'i' + c08 + c39
tab_asc[162]:= 'o' + c08 + c39
tab_asc[163]:= 'u' + c08 + c39
*--------------
tab_asc[181]:= 'A' + c08 + c39
tab_asc[144]:= 'E' + c08 + c39
tab_asc[214]:= 'I' + c08 + c39
tab_asc[224]:= 'O' + c08 + c39
tab_asc[233]:= 'U' + c08 + c39
*------------------------------------
tab_asc[131]:= 'a' + c08 + c94
tab_asc[136]:= 'e' + c08 + c94
tab_asc[140]:= 'i' + c08 + c94
tab_asc[147]:= 'o' + c08 + c94
tab_asc[150]:= 'u' + c08 + c94
*--------------
tab_asc[182]:= 'A' + c08 + c94
tab_asc[210]:= 'E' + c08 + c94
tab_asc[215]:= 'I' + c08 + c94
tab_asc[226]:= 'O' + c08 + c94
tab_asc[234]:= 'U' + c08 + c94
*------------------------------------
tab_asc[133]:= 'a' + c08 + c96
tab_asc[138]:= 'e' + c08 + c96
tab_asc[141]:= 'i' + c08 + c96
tab_asc[149]:= 'o' + c08 + c96
tab_asc[151]:= 'u' + c08 + c96
*--------------
tab_asc[183]:= 'A' + c08 + c96
tab_asc[212]:= 'E' + c08 + c96
tab_asc[222]:= 'I' + c08 + c96
tab_asc[227]:= 'O' + c08 + c96
tab_asc[235]:= 'U' + c08 + c96
*------------------------------------
tab_asc[198]:= 'a' + c08 + c126
tab_asc[228]:= 'o' + c08 + c126
*--------------
tab_asc[199]:= 'A' + c08 + c126
tab_asc[229]:= 'O' + c08 + c126
*------------------------------------
tab_asc[135]:= 'c' + c08 + c44
tab_asc[128]:= 'C' + c08 + c44
*-------------
case OPCAO_PRN = 'D' // para doc
c1:= "\'"
c2:= "\u"
*------------------------- ‚¡¢£ µÖàé
tab_asc[160]:= c1+"e1"
tab_asc[130]:= c1+"e9"
tab_asc[161]:= c1+"ed"
tab_asc[162]:= c1+"f3"
tab_asc[163]:= c1+"fa"
*--------------
tab_asc[181]:= c1+"c1"
tab_asc[144]:= c1+"c9"
tab_asc[214]:= c1+"cd"
tab_asc[224]:= c1+"d3"
tab_asc[233]:= c1+"da"
*------------------------ … Š •— ·ÔÞãë
tab_asc[131]:= c1+"e0"
tab_asc[136]:= c1+"e8"
tab_asc[140]:= c1+"ec"
tab_asc[147]:= c1+"f2"
tab_asc[150]:= c1+"f9"
*--------------
tab_asc[182]:= c1+"c0"
tab_asc[210]:= c1+"c8"
tab_asc[215]:= c1+"cc"
tab_asc[226]:= c1+"d2"
tab_asc[234]:= c1+"d9"
*------------------------ ƒˆŒ“– ¶Ò×âê
tab_asc[131]:= c1+"e2"
tab_asc[138]:= c1+"ea"
tab_asc[141]:= c1+"ee"
tab_asc[149]:= c1+"f4"
tab_asc[151]:= c1+"fb"
*--------------
tab_asc[183]:= c1+"c2"
tab_asc[212]:= c1+"ca"
tab_asc[222]:= c1+"ce"
tab_asc[227]:= c1+"d4"
tab_asc[235]:= c1+"db"
*----------------------- Æä Çå ‡€
tab_asc[198]:= c1+"e3"
tab_asc[228]:= c1+"f5"
*--------------
tab_asc[199]:= c1+"c3"
tab_asc[229]:= c1+"d5"
*---------------
tab_asc[135]:= c1+"e7"
tab_asc[128]:= c1+"c7"
*-------------------------- Ú ¿ À Ù Â Á Ã ´ ³ Ä Å
tab_asc[218]:= c2+"9484"+c1+"2b"
tab_asc[191]:= c2+"9488"+c1+"2b"
tab_asc[192]:= c2+"9492"+c1+"2b"
tab_asc[217]:= c2+"9496"+c1+"2b"
tab_asc[194]:= c2+"9516"+c1+"2d"
tab_asc[193]:= c2+"9524"+c1+"2d"
tab_asc[195]:= c2+"9500"+c1+"2b"
tab_asc[180]:= c2+"9508"+c1+"a6"
tab_asc[179]:= c2+"9474"+c1+"a6"
tab_asc[196]:= c2+"9472"+c1+"2d"
tab_asc[197]:= c2+"9532"+c1+"2b"
endcase
RETURN(NIL)
*----------------------------