我需要的是:从多行TextArea中获取一个名称列表,将它们放入一个数组中,对它们进行一些修改,然后将它们打印到列表中。
我遇到的问题是:实际上,从TextArea获得输入并将其粘贴在一个数组中——我已经完成了其余的工作。我读过某人的类似问题,但这个问题的解决方案对我不起作用;当我引用它时,我一直得到一个NullPointerException,这意味着那里什么都没有,并且输入没有放入数组中。
编码:TextArea被称为"taClient",只需鼠标点击一个名为"btnProcess"的按钮即可激活
private void btnProcessMouseClicked(java.awt.event.MouseEvent evt)
{
String[] names = taClient.getText().split("\n");
Account[] account = new Account[names.length];
for(int x = 0; x<names.length; x++)
{
account[x].Name = names[x];
}
//All the modifications and other code and printout.
}
据我所知,这应该是可行的,但我对文本区域或String.split()方法没有太多经验,所以我可能还差得很远。(此外,正如我之前所说,这个设计是基于其他人在这里的问题,他们说这个答案解决了他们的问题……但不是我的问题。)
提前感谢!
您是否尝试只使用一个反斜杠拆分字符串,如.split("n")
。
您可能在Windows上,想要通过换行读取拆分Java字符串
同样使用Guava的new LineReader(new StringReader(taClient.getText()))
也可以做到这一点(http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/io/LineReader.html)