我需要将变量附加到 TextArea
中的每一行文本。 TextArea
已编码,并且工作完美。我可以使用 TextArea.getText();
从 TextArea
检索信息
为了将其分开,我尝试使用 BufferedReader。不幸的是,这不起作用。有不同的方法吗?以下是如何在文本区域中写入信息的示例:
“ worker 姓名”
“ worker 部门”
“ worker 编号”
BufferedReader inStream= new BufferedReader
(new InputStreamReader(TextArea.getText()));
String workerName = "";
String workerDepartment = "";
int workerNumber = 0;
String line = inStream.readLine();
while (line != null) {
workerName = line;
line = inStream.readLine();
workerDepartment = line;
line = inStream.readLine();
workerNumber = Integer.parseInt(line);
}
inStream.close();
最佳答案
如果行之间有任何分隔符(例如换行符、逗号...)分隔,则使用 String 的 split 方法并放置分隔符
String[] lines = TextArea.getText().split("\n");
//then you can access your array
String workerName = lines[0];
String workerDepartment = lines[1];
// and so on
此外,您需要在获取值之前检查数组大小以防止 ArrayOutOfIndexException,例如,如果只有两行,则不应调用lines[2],因此请进行检查:
if ( lines.length < 3 ) {
// input is not complete, show error message
}
else {
// do your splitting and reading values
}
关于java - 逐行读取文本区域并分配变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14422144/