Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Valore intero che rappresenta una stringa

    Salve a tutti,

    sto cercando un modo per trasformare una stringa in un valore numerico. Per la precisione un valore intero.
    Ho provato a usare getBytes() per il mio scopo finale, ma ho bisogno di un intero che mi identifichi una certa stringa.

    Ad esempio se la stringa "ciao" corrisponde (sempre) all'intero "12345", so che ogni volta che vedo "12345", posso ricavare la stringa "ciao". Ovviamente tutto ciò che noi vediamo sotto forma di stringa, viene comunque trasformato in una cifra binaria. Quindi immagino che sia possibile anche ricavarne il corrispettivo valore intero. Come si può fare ciò?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Valore intero che rappresenta una stringa

    Originariamente inviato da fbcyborg
    sto cercando un modo per trasformare una stringa in un valore numerico. Per la precisione un valore intero.
    Ho provato a usare getBytes() per il mio scopo finale, ma ho bisogno di un intero che mi identifichi una certa stringa.

    Ad esempio se la stringa "ciao" corrisponde (sempre) all'intero "12345", so che ogni volta che vedo "12345", posso ricavare la stringa "ciao". Ovviamente tutto ciò che noi vediamo sotto forma di stringa, viene comunque trasformato in una cifra binaria. Quindi immagino che sia possibile anche ricavarne il corrispettivo valore intero. Come si può fare ciò?
    Da una stringa puoi ottenere un byte[] con N byte che codificano i caratteri in un certo charset (che può essere uno imposto da te oppure "il charset di default"). Questo sì, puoi farlo ed è ben chiaro cosa ottieni.
    Se parli di "valore intero", beh qui è da valutare. Vuoi prendere gli N byte e "vederli" come un valore numerico di N*8 bit? Anche questo è possibile. Ma tieni presente che con valori primitivi al massimo potresti gestire 8 byte con un long. Di più si può ma dovresti usare BigInteger. Vedi i costruttori di BigInteger che ricevono un byte[].
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Grazie mille andbin, hai fatto centro. BigInteger è proprio il dato che ho bisogno di trattare, quindi va benissimo.
    Ho bisogno di un valore intero, perché sto usando una libreria che fornisce metodi di crittazione.
    Ad esempio, come plaintext prende:
    codice:
    String plaintext = "12345"
    Per questo motivo, se voglio cifrare una stringa del tipo "Ciao", ho bisogno di trasformarla in una stringa del tipo "12345", per poi passarla alle librerie di cui sopra, facendo opportunamente quanto segue:
    codice:
    BigInteger plainBigInt = new BigInteger("12345");
    Quindi sostanzialmente, siccome non dovrò cifrare necessariamente stringhe del tipo "12345", ma stringhe come "ciao!" vorrei trasformare le mie stringhe in BigInteger, a prescindere che rappresentino un valore numerico o un valore alfanumerico.

    Grazie!!!

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fbcyborg
    perché sto usando una libreria che fornisce metodi di crittazione.
    Puoi chiarire quale è questa libreria? Perché mi pare alquanto strano che tu debba fare questo passaggio abbastanza inusuale.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Certo, si tratta della libreria thep. Implementa la crittografia omomorfica secondo il sistema Paillier.

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.