使用文件输入/android登录
我是android开发的初学者,我不知道应该应用哪种逻辑。 我想用java进行文件输入/输出登录, 现在我可以将文本写入文件,文本是“用户名是管理员密码是管理员” 现在,当我想读取这个文件时,我想应用一些登录,如果文件中写入的用户名是“admin”,而密码是“admin” 然后显示toast,否则会出错。 我不知道如何从这个文本文件中读取关键字“admin”。使用文件输入/android登录,android,login,Android,Login,我是android开发的初学者,我不知道应该应用哪种逻辑。 我想用java进行文件输入/输出登录, 现在我可以将文本写入文件,文本是“用户名是管理员密码是管理员” 现在,当我想读取这个文件时,我想应用一些登录,如果文件中写入的用户名是“admin”,而密码是“admin” 然后显示toast,否则会出错。 我不知道如何从这个文本文件中读取关键字“admin”。 谢谢如果您将文件保存在android SD卡中,您可以使用android共享首选项或数据库。任何人都可以看到此文件并对其进行修改请尝试以
谢谢如果您将文件保存在android SD卡中,您可以使用android共享首选项或数据库。任何人都可以看到此文件并对其进行修改请尝试以下操作:
String x = "admin"
String y = "admin"
if (x.equals("admin") && y.equals("admin)) {
Toast.makeText(this, "Login Successful", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(this, "Error", Toast.LENGTH_LONG).show();
}
用TextView的替换字符串x和y。假设usernameView是用户名输入的文本视图。在if语句中调用(username.getText.equals(“admin”)。试试这个
SharedReferences=getSharedReferences(“loginDetails”,Context.MODE\u PRIVATE)代码>
private void setLoginDetails(字符串用户名、字符串密码){
SharedReferences.Editor=SharedReferences.edit();
编辑器.putString(“用户名”,用户名);
编辑器.putString(“密码”,password);
commit();
}
private boolean isValidUser(字符串用户名、字符串密码){
if(SharedReferences.getString(“用户名”,null).equals(用户名)和&SharedReferences.getString(“密码”,null).equals(密码))
返回true;
其他的
返回false;
}
**如果您真的希望它的最佳做法是加密数据并保存在SharedReferences中。验证从SharedReferences获取数据并对其解密 我想你还没有做研究。我刚刚在Google中键入了“如何在android中读取文件”,并在第一个链接中得到了答案。在这里提问之前,你们必须做研究 通过使用StringBuilder和BufferedReader可以将所有文本写入文件。将其存储在字符串类型变量中。 然后,您可以使用
indexOf(搜索词)
和lastIndexOf(搜索词)
轻松地从该字符串类型变量中查找搜索词的开始、最后索引
您可以获得该方法的参考
下面的链接有你的答案。看看吧
存储的唯一文本是“username is admin password is admin”,因此我使用string.split方法将字符串拆分并存储到数组中,然后在textview中,我将值保存在该数组的指定索引处感谢快速回复和链接Maulik,但我知道如何在android中读取文件中的数据,我只想知道如何提取用户名和密码的特定值。在该文件中,唯一的文本是“username is admin password is admin”。我说的对吗?@user3588320Yeah唯一存储的文本是“username is admin password is admin”,所以我使用string.split方法将字符串拆分并存储到数组中,然后在textview中,我将值保存在该数组的指定索引处。好的。您可以发布您的答案吗?或者您可以接受任何已发布在此处且您使用过的答案。@user3588320问题已解决,先生,我只想从保存的数据中提取用户名和密码的值。我使用String.split()方法将值存储在数组中,然后将这些值与EditText中的值进行比较。