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

Java 逐行读取文本区域并分配变量,java,textarea,Java,Textarea,我需要在TextArea的每行文本中添加变量。TextArea已编码,工作正常。我可以使用TextArea.getText()从TextArea检索信息 为了将其分解,我尝试使用一个BufferedReader。不幸的是,这不起作用。有没有其他的方法?以下是如何在文本区域中写入信息的示例: BufferedReader inStream= new BufferedReader (new InputStreamReader(TextArea.getText())); String worker

我需要在
TextArea
的每行文本中添加变量。
TextArea
已编码,工作正常。我可以使用
TextArea.getText()从
TextArea
检索信息 为了将其分解,我尝试使用一个
BufferedReader
。不幸的是,这不起作用。有没有其他的方法?以下是如何在文本区域中写入信息的示例:

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();                  
“工作名称”

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();                  
“工部”

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();                  
“工作编号”

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方法并放置分隔符

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[] lines = TextArea.getText().split("\n");

//then you can access your array
String workerName = lines[0];
String workerDepartment = lines[1];
// and so on
此外,您还需要在获取值之前检查数组大小以防止ArrayOutOfIndexException,例如,如果只有两行,则不应调用行[2],因此请执行以下检查:

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();                  
   if ( lines.length < 3 ) {
      // input is not complete, show error message
   }
   else {
      // do your splitting and reading values
   }
if(lines.length<3){
//输入不完整,显示错误消息
}
否则{
//执行拆分和读取值的操作
}