我有一个存储有大量文本的字符串,看起来像这样
String aLotOfText = "aaaaaaaaaaaaaaaaaaaaaaaa " + variable1 + ". /n/n"
"bbbbbbbbbbbbbbbbbbbbbbb " + variable2 + ". /n/n" //and so on...
当我尝试使用 setText() 方法将其添加到 JTextArea 时,它全部变成一行,包括“/n”。像这样:
aaaaaaaaaaaaaaaaaaaaaaaa 1. /n/nbbbbbbbbbbbbbbbbbbbbbbb 2. /n/n
如何在每一行中获取它?
编辑: 这是我的 JTextArea 和 JPanel。 我已将/n 更改为\n 但现在只显示一行
JPanel panel = new JPanel();
getContentPane().add(panel);
panel.setLayout(new BorderLayout());
konsol = new JTextArea();
konsol.setEditable(false);
JScrollPane konsolSP = new JScrollPane(konsol);
konsolSP.setBorder(BorderFactory.createTitledBorder("Server Output"));
panel.add(konsolSP, BorderLayout.CENTER);
konsol.setRows(100);
最佳答案
您使用的是 /n
而不是 \n
,这是适当的换行符转义序列。
编辑:为了向您展示我如何让我的工作正常工作,我发布了最小的可编译代码片段:
public class JTATest extends JFrame {
public JTATest() {
JTextArea jta = new JTextArea();
jta.setText("lol\n\nlol");
//jta.setRows(50); // You do not actually need this
this.add(jta);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.pack();
this.setVisible(true);
}
public static void main(String[] args) {
new JTATest();
}
}
关于java - 将多行文本添加到 JTextArea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43768342/