Advertisement
Guest User

Untitled

a guest
Jan 27th, 2020
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.42 KB | None | 0 0
  1. package com.example.strongpassword;
  2.  
  3. import androidx.appcompat.app.AppCompatActivity;
  4.  
  5. import android.os.Bundle;
  6. import android.view.View;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. import android.widget.TextView;
  10. import android.widget.Toast;
  11.  
  12. public class MainActivity extends AppCompatActivity {
  13.  
  14.     Button submitBtn;
  15.     EditText passwordLengthField;
  16.     TextView generatedPassword;
  17.     @Override
  18.     protected void onCreate(Bundle savedInstanceState) {
  19.         super.onCreate(savedInstanceState);
  20.         setContentView(R.layout.activity_main);
  21.  
  22.         submitBtn = findViewById(R.id.SubmitBtn);
  23.         passwordLengthField = findViewById(R.id.PasswordLengthField);
  24.         generatedPassword = findViewById(R.id.ResultView);
  25.  
  26.         submitBtn.setOnClickListener(new View.OnClickListener() {
  27.             @Override
  28.             public void onClick(View v) {
  29.                 String randomGeneratedPassword = null;
  30.  
  31.                 boolean isTrue = true;
  32.                 while(isTrue) {
  33.                     String pwLengthString = passwordLengthField.getText().toString().trim();
  34.                     int pwLengthInt = Integer.parseInt(pwLengthString);
  35.  
  36.                     if (pwLengthInt > 8 && pwLengthInt < 16) {
  37.                         randomGeneratedPassword = randomPassword(pwLengthInt);
  38.                         isTrue = false;
  39.                     }
  40.                     else {
  41.                         Toast.makeText(MainActivity.this, "Error in password length", Toast.LENGTH_LONG).show();
  42.                     }
  43.                 }
  44.                 generatedPassword.setText(randomGeneratedPassword);
  45.             }
  46.         });
  47.     }
  48.     public static String randomPassword(int passwordLength){
  49.  
  50.         String numbers = "1234567890";
  51.         String smallCharacter = "abcdefghijklmnopqrstuwxyz";
  52.         String capCharacter  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  53.         String symbols = "!@#$%^&*()_-+=[]{}:;'\"|/?.><,";
  54.  
  55.         String wholeArr = numbers + smallCharacter + capCharacter+ symbols;
  56.         char wholeArray[] = wholeArr.toCharArray();//converting combined string to char array
  57.  
  58.         char[] randPasswordStore = new char[passwordLength];
  59.  
  60.         for(int a =0; a<passwordLength; a++){
  61.             randPasswordStore[a]= wholeArr.charAt((int)(Math.random() * wholeArray.length));
  62.         }
  63.         String result = String.valueOf(randPasswordStore);
  64.         return result;
  65.     }
  66.  
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement