java - 获取文本文件值,拆分,输出到 JTextArea
问题描述
我有一个项目,我必须通过单击按钮将文本文件的内容输出到 JTextArea 中,但文本文件的内容由;
以下示例分隔:2.32;123,864,432.23;
. 我必须拆分文本文件的内容,然后将其输出到文本区域。我在这样做时遇到了困难,因为当我输入代码时我的代码错误textbox1.append(title);
。谁能帮我找到解决方案?
这是我的代码
btn1.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
JFileChooser filechooser = new JFileChooser();
filechooser.setDialogTitle("Select text file");
filechooser.showOpenDialog(null);
File openfile = filechooser.getSelectedFile();
FileInputStream fis = null;
try {
fis = new FileInputStream (openfile);
} catch (FileNotFoundException d) {
// TODO Auto-generated catch block
d.printStackTrace();
}
BufferedReader br = new BufferedReader (new InputStreamReader (fis));
String line = null;
try {
line = br.readLine();
while (line != null) {
String[] text = line.split(";");
textbox.append(text);
line = br.readLine();
}
} catch (IOException f) {
// TODO Auto-generated catch block
f.printStackTrace();
}
try {
br.close(); //closes the file
} catch (IOException g) {
// TODO Auto-generated catch block
g.printStackTrace();
}
}
解决方案
String
您必须单独附加split
数组中的每个,而不是数组本身。
Stream.of(line.split(";")).forEach(textbox::append);
如果你想对分割文本做更多的事情,你也可以使用 for 循环:
for(String part:line.split(";")) {
textbox.append(part);
textbox.append("\n");
}
推荐阅读
- javascript - Javascript 数组更改为新数组反映在用于创建它的数组中
- python - 如何根据 Numpy 中另一个数组的分组值生成一个数组?
- php - PHP 宇宙飞船运算符 <=> 如何准确地作用于字符串?
- detox - 使用 detox 和 IOS 时如何返回?
- firebase - 使用firebase auth和firebase核心依赖后出现flutter firebase版本解决错误
- javascript - 自动检测字体形式 PDF。下载字体并在网站上以该字体显示文本?
- excel - 使用 VBA 的 Ultimate 1000 分隔符
- r - 为什么我无法更改此 sf 对象绘图的图例标题?
- azure - 如何使用 REST API 在经典发布管道中使用手动干预任务获取批准者详细信息
- android - 无法启动 AVD