我正在尝试拆分我的BufferedReader
和String [] x = Login.Split("");
读取的每一行字符串。我在String
我可以用什么方法来分割private void SubmitActionPerformed(java.awt.event.ActionEvent evt) {
try {
FileReader FR = new FileReader("Login.txt");
BufferedReader Login = new BufferedReader(FR);
StringBuilder sb= new StringBuilder();
String str;
String [] x = Login.Split("");
while ((str = Login.readLine()) !=null ) {
sb.append(str);
sb.append("\n");
}
Login.close();
FR.close();
System.out.println(sb.toString());
Scanner read = new Scanner(Login);
} catch (Exception ex) {
System.out.println("exception 2, " );
ex.printStackTrace();
}
}
?我将添加一个方法来查看字符串匹配是否由另一个输入创建,但是现在我需要弄清楚如何拆分字符串并且仍然将每行分开。
(我正试图找到另一种方法来登录,因为我有java 8,不能使用sql和ucanaccess似乎也没有帮助)我也尝试使用分隔符,但找不到一个很好的适用示例。
Grass
答案 0 :(得分:2)
我不清楚你想要什么?
答:你想把阅读器中的单个单行放入一个aray?据我所知,readline()方法已经读取了一行文本。
或
B你想要分割行中的单词,在这种情况下你可以尝试使用它:String [] x = Login.trim()。split(" // s"); // RegEx将在单词之间占用多个空格,trim()将在行的开头和结尾处剪切空格(如果有的话)。
但是在尝试拆分数组中的单词之前,我可以看到你没有在阅读器中读取一行。所以它试图分裂一些没有任何数据的东西。
注意我刚从Java开始,但我希望这会有所帮助。
答案 1 :(得分:1)
根据您的新评论
String str;
while ((str = Login.readLine()) !=null ) {
String [] x = str.Split(" ");
// ?? new method to scan string array
scanThis (x);
sb.append(str);
sb.append("\n");
}
void scanThis (String arr[])
{
for (int x = ; x < arr.length; x++) {
{
if (arr[x].equals ("login")) {
System.out.println ("Hurray");
break;
}
}
}
答案 2 :(得分:1)
我在
收到语法错误String [] x = Login.Split("");
不,你不是,你得到一个编译错误,读取'没有这样的方法'。这不是语法错误。
Login
(愚蠢名称)是BufferedReader
,而BufferedReader
没有Split()
方法。另一方面,String
有split()
方法(注意案例)。大概这就是你要找的东西。
但是拆分空字符串不会有任何用处。