gpt4 book ai didi

java - 在我的 MainActivity.java 文件中的何处添加代码以散列密码

转载 作者:行者123 更新时间:2023-11-29 03:36:28 25 4
gpt4 key购买 nike

我必须创建一个 Activity 从用户那里获取用户名和密码。然后它对密码应用 MD5 哈希,最后查询本地数据库以返回“true”或“false”。

我从 blog 中得到了 MD5 代码 fragment .代码 fragment 在 eclipse 上显示以下错误:

标记线1:这条线有多个标记

  • token 语法错误,构造错误
  • 语法错误,插入“enum Identifier”来完成EnumHeader
  • token “String”的语法错误,@expected
  • token “String”的语法错误,@expected

标记的第 2 行:标记语法错误,错误放置的结构

标记的第 3 行: token 上的语法错误,错误放置的构造

标记线4:这条线有多个标记

  • token “catch”的语法错误,需要标识符
  • token “}”的语法错误,{ 应在此 token 之后

我对 Java 和 Android 环境都非常陌生。请告诉我代码有什么问题,我应该将 md5 哈希函数的代码放在哪里才能让我的 Activity 正常工作。也请指导我查询本地 SQLite 数据库并从那里返回所需的值。

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

private String md5(String in) { //line 1
MessageDigest digest; //line 2
try { //line 3
digest = MessageDisgest.getInstance("MD5");
digest.reset();
digest.update(in.getBytes());
byte[] a = digest.digest();
int len = a.length;
StringBuilder sb = new StringBuilder(len << 1);
for(int i=0;i<len;i++) {
sb.append(Character.forDigit((a[i] & 0xf0) >> 4, 16));
sb.append(Character.forDigit(a[i] & 0x0f, 16));
}
return sb.toString();
} catch (NoSuchAlgorithmException e) { e.printStackTrace();} //line 4
return null;

}

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);



Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
EditText text = (EditText)findViewById(R.id.editText1);
EditText text1 = (EditText)findViewById(R.id.editText2);
String userid = text.getText().toString();
String pass = text1.getText().toString();
Toast.makeText(MainActivity.this,"Entered"+userid+"and password entered is"+pass,Toast.LENGTH_SHORT).show();
}

});

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

}

最佳答案

在 Java 中,所有方法都必须存在于内部一个类中。

public class MainActivity extends Activity {
private String md5(String in) {
// etc
}

// Rest of class
}

I am extremely new to java and also the android environment.

您会发现阅读教程或介绍有很多好处,例如 Learning the Java Language来自该语言的作者。

关于java - 在我的 MainActivity.java 文件中的何处添加代码以散列密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15280581/

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