java - 逐行读取文本区域并分配变量

标签 java textarea

我需要将变量附加到 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/

相关文章:

java - 如何在 java fx 中每 2 秒更新一次标签框?

java - 按下按钮时将值行添加到文本区域中

JQuery 和 textarea 宽度 : css() method

java - FileOutputStream 与 ByteArrayOutputStream

Java,通过输入/输出流发送数据

Java Play : bindFromRequest() not working

HTML 文本区域的外观在单击内部后发生变化吗?

php - 为什么我无法获取此文本区域的值?

javascript - 复制粘贴表格到 chrome,textarea.value 没有新行

java - 解析后从单词中获取开始位置和/或 NER