07. maj 2002 - 16:57Der er
9 kommentarer og 1 løsning
Generering af alfanummereisk password
hvis man skal generere et alfanummereisk password på 3-5 baseret på tilfældigheder? etc. A35jH Hvordan gør man det, rent kode-mæssigt? Den skal gemmes som en tekststreng.
Brug java.util.Random til at generere tilfældige tal Random.nextInt() retunerer tilfældigt heltal x % length, sørger for at x er højst length-1 Math.abs(x), x skal altid være positiv
public String genererPW(int length) { StringBuffer pwBuffer = new StringBuffer(); String legalChars="0123456789abcdefghijklmnopqrstuvxyzæøåABCDEFGHIJKLMNOPQRSTUVXYZÆØÅ"; Random rand = new Random();
for (int i=0; i<length; i++) pwBuffer.append(legalChars.charAt(Math.abs(rand.nextInt()%legalChars.length())));
disky, du er java guru, så bliver det bare pwBuffer.append( legalChars.charAt(rand.nextInt(legalChars.length())) ); Tilgengæld er det lidt nemmere at opskrive en streng i stedet for et char array.
Nå ja, men jeg kopierer lige den her over.Taget fra di spørgsmål igår. QD::
Det var jo lige et spørgsmål mere :) Her noget noget gammelt kode der bygger på javas random generator. Da det egentlig er en beregning randomgeneratoren bygger på, kan man vel ikke helt sige at den er random, men den er da god nok. Du kan jo prøve at køre den, og evt lave den om til en metode, eller hvad du har brug for. Som du ser afhænger passwordets længde af stop værdien i forløkken ( pt. 5 ) Håber du kan bruge det til noget. QD::
import java.util.Random;
public class PassWord {
public static void main (String[] args) {
Random generator = new Random(); String password =""; for(int i = 0; i <5; i++) { int index = Math.abs (generator.nextInt()) % 37 + 0; String [] alfabet = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","z","æ","ø","å","1","2","3","4","5","6","7","8","9","0"}; String x = alfabet[index];
Jeg siger mange tak for alle svarene og beklager at jeg afviste dig svar Disky. Jeg troede faktisk bare man skulle give point det den respondent hvis svar man valgte at bruge. Det vil ikke ske igen. Jeg er villig til at oprette et spørgsmål med pointene hvis du vil? Noget andet er... hvis man nu giver etc 60 points for et svar, og man acceptere 2 svar (som jeg burde have gjort) bliver pointene så ikke del 50/50 ?
Yep hvis du accepterer to svar skulle den dele det 50/50
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.