Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Riassunto x farmi capire meglio:

    ho un textbox1 dove io scrivo una parola qualunque
    con l'azione di un commandbutton vado a trascrivere questa parola in un textbox2 con caratteri modificati aumentanDo, per es, il valore del codice ASCII del carattere di 5
    Per es:TOPO mi diventa YTUT
    Intanto questo NON era quello che chiedevi in origine. Avevi chiesto
    una mappatura fissa : A -> F ....
    Con l'aggiunta di 5 al codice ascii ti ritrovi dei caratteri non
    alfabetici per le lettere w z y z.
    Se vuoi un crypt come nella tua seconda richiesta allora va
    benissimo quanto ti ha postato ans.
    codice:
    for i = 1 to len(textbox1.text) 
    textbox2.text = textbox2.text & Chr$(Asc(Mid$(textbox1.text, I, 1))+5) 
    next i
    Ciao,
    Ciao, Brainjar

  2. #12
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Heyjoe
    la guida in linea di VB6 mi da questo esempio x la funzione con l'uso di ASC():

    STORE 'ABCDEFGHIJ' TO gcANSI && 10 characters
    CLEAR
    FOR nCOUNT = 1 TO 10
    ? SUBSTR(gcANSI, nCount,1) && Display a character
    ?? ASC(SUBSTR(gcANSI, nCount)) && Display ANSI value
    ENDFOR

    ci capisco quasi una mazza, se non che dovrebbe rendermi il numero corrispondente al carattere nel codice ANSI, ma come "tradurlo" nella corrispondente lettera abbinata?

    Nella guida di VB6 ?

    Veramente questo e' Visual FoxPro ... ovvio che non riesci piu' a comprendere ...

  3. #13
    Utente di HTML.it L'avatar di Heyjoe
    Registrato dal
    Dec 2001
    Messaggi
    95
    @ ans: grazie .. adesso mi studio bene la formula x capire come funziona

    @ Brainjar: è vero, ho modificato la richiesta, perchè mi sono accorto che richiedendo solo un aumento del valore del codice ASCII potevo ottenere la stessa cosa ... ti chiedo scusa per non averlo esplicitato

    @ Oregon: ripeto, sono alle primissime armi con VB6, maneggio meglio i progammi di grafica, che di linguaggio, ma quella funzione l'ho trovata nella guida in linea di VB6 attraverso la ricerca nell'indice sotto ASC() Function Example

    Quest'esempio mi serve ad immettere dei dati in un DB senza che questi risultino leggibili se non attraverso il "traduttore", cioè una specie di protezione elementare.

    Grazie a tutti

  4. #14
    Utente di HTML.it L'avatar di Heyjoe
    Registrato dal
    Dec 2001
    Messaggi
    95
    Il codice postato da ans funziona a meraviglia, è quello che volevo
    Adesso, vorrei capirlo pienamente

    Vediamo se ne vengo fuori:

    1.Private Sub Command1_Click()
    2.Text2.Text = ""
    3.For i = 1 To Len(Text1.Text)
    4.Text2.Text = Text2.Text & Chr$(Asc(Mid$(Text1.Text, i, 1)) + 5)
    5.Next i
    6.End Sub

    Allora, c'è un ciclo For Next dal rigo 3 al 5 dove i è uguale al numero di caratteri all'interno di Text1
    Il rigo 4 mi dice che Text2 è uguale a Text2 più & (ma qual'è il significato della & ?):
    Chr$() mi dovrebbe rendere il codice del carattere in formato stringa (penso servi a questo l'$ finale)
    Asc() dovrebbe essere il valore ANSI del carattere aumentato di 5
    Mid$() ..di nuovo con il simbolo del $.. numero specifico di caratteri nella stringa Mid(string, start[, length])

    Applichiamolo ad un esempio: parola "NOTA" viene "tradotta" in "STYF" dove
    N = 78 +5 = 83 = S
    O = 79 +5 = 84 = T
    T = 84 +5 = 89 = Y
    A = 65 +5 = 70 = F

    Riga 3 mi dice che ci sono 4 caratteri
    Nella riga 4 mi accavallo nel susseguiri di Chr, Asc e Mid: non riesco a capire la sequenza svolta

    Se una buon'anima mi può applicare l'esempio alla funzione :master:

  5. #15
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    la mid ti estrae da una stringa, partendo da una certa posizione, un numero di caratteri che decidi tu. Nel caso in questione estrae ogni singolo carattere da text1.text.
    Ans.

  6. #16
    Utente di HTML.it L'avatar di Heyjoe
    Registrato dal
    Dec 2001
    Messaggi
    95
    Scusa ans se ti assillo

    Allora la mid() mi estrae ogni singolo carattere (questo col ciclo for next di i)
    La Asc() mi da il codice ASCII dei singoli caratteri + 5
    E la Chr è legata a Text2, ma a cosa serve se già ho Asc() che mi da il codice dei caratteri ? .. forse non mi è chiara la funzione della & qui: Text2.Text & Chr$(tutto il resto)
    Oppure Chr() mi trasforma il codice ASCII in caratteri?



    Grazie comunque

  7. #17
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    l'ultima che hai detto, restituisce il carattere relativo al codice ASCII.
    Ans.

  8. #18
    Utente di HTML.it L'avatar di Heyjoe
    Registrato dal
    Dec 2001
    Messaggi
    95
    Grazie ans, ho trovato questo codice che mi ha aiutato a capire la differenza tra Chr() e Asc():
    codice:
    Private Sub Form_Load()
    Dim iAscii As Integer
    
    For iAscii = 0 To 255
        List1.AddItem "Ascii Value: " & iAscii & " = " & Chr(iAscii) & " and Character " & Chr(iAscii) & " =" & Asc(Chr(iAscii))
    Next
        
        
    End Sub
    dove List1 è un listbox dove vengono stampati tutti i caratteri e simboli


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.