gpt4 book ai didi

java - 使用 if 语句比较字符串

转载 作者:行者123 更新时间:2023-12-01 07:11:21 24 4
gpt4 key购买 nike

我正在尝试将 EditText 字段中的字符串与共享首选项中的字符串进行比较。如果字符串匹配,则新 Activity 开始。 Sharedpreferenced 中的字符串采用 Base64 编码。我试图在解码后将编辑文本字符串与共享首选项字符串进行比较,但无法获得正确的编码。我怎样才能正确编码呢?示例值得赞赏。我的比较器位于第 77 和 78 行

 44. public void onClick(View arg0) {
45.
46. sp=this.getSharedPreferences("AccessApp", MODE_WORLD_READABLE);
47.
48.
49.
50.
51. byte[] key = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5 };
52.
53.
54. try {
55. user = sp.getString("USERNAME_KEY", null);
56. String decryptedUser = decrypt(user, key);
57.
58.
59. }
60. catch (Exception e) {
61. // TODO Auto-generated catch block
62. e.printStackTrace();
63. }
64. try {
65. pass = sp.getString("PASSWORD_KEY", null);
66. String decryptedPass = decrypt(pass, key);
67.
68.
69.
70. } catch (Exception e) {
71. // TODO Auto-generated catch block
72. e.printStackTrace();
73. }
74.
75. if(lBttn.equals(arg0)){
76.
77. if((uname.getText().toString().equals(decryptedUser)) &&
78. (pword.getText().toString().equals(decryptedPass)))
79.
80. {
81. Toast.makeText(this, "You are Logged In", 20000).show();
82.
83. Intent intent;
84. intent=new Intent(this,details.class);
85. startActivity(intent);
86. flag=1;
87. }

最佳答案

decryptedUserdecryptedPass 各有 2 个副本。一对位于 try block 内,另一对作为成员。它们在第 77 行始终为空,因为您将解密的值分配给您从未使用过的不同变量(第 56 行和第 66 行)。将整个代码移至单个 try block 中。

public void onClick(View arg0) {
...
...
String decryptedUser;
String decryptedPass;
try {
user = sp.getString("USERNAME_KEY", null);
decryptedUser = decrypt(user, key);
pass = sp.getString("PASSWORD_KEY", null);
decryptedPass = decrypt(pass, key);
/* Your if statements follow from here */
...
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

关于java - 使用 if 语句比较字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13628414/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com