如果您有一个名为" login.txt"的文本文件 - 在与可执行jar相同的文件夹中 - 包含ID:username Password:password
,这是将ID和密码内容转换为两个字符串的最佳方式,因此您可以将其替换为:api.login("username", "password");
P.S。用户名和密码没有空格,我的不好。
编辑:在api.login("username", "password");
,用户名和密码应该是我原来的,我想从文件转换为api.login(ID, Password);
这样的字符串
答案 0 :(得分:0)
重申:条件:
ID:username Password:password
ID
是一个静态字符串Password
是一个静态字符串username
从不包含空格。然后,您可以使用简单的Regex提取数据:
ID:(?<username>[^\s]++)\s++Password:(?<password>.*+)
例如:
public User extractCredentials(final String data) {
final Pattern pattern = Pattern.compile("ID:(?<username>[^\\s]++)\\s++Password:(?<password>.*+)");
final Matcher matcher = pattern.matcher(data);
if (!matcher.matches()) {
throw new IllegalArgumentException("Invalid data format");
}
return new User(matcher.group("username"), matcher.group("password"));
}
public class User {
private final String name;
private final String password;
public User(String name, String password) {
this.name = name;
this.password = password;
}
//getter
@Override
public String toString() {
return String.format("User{name='%s', password='%s'}", name, password);
}
}
输出:
System.out.println(extractCredentials("ID:username Password:password"));
User{name='username', password='password'}