使用JavaSwing的新行JLabel

使用JavaSwing的新行JLabel,java,html,Java,Html,我正在用java为一个学校项目应用程序创建一个GUI,我们基本上是在尝试输出曲棍球比赛的分数(从文件中读取),并将其以标签形式输出到屏幕上,如下所示: Boston Bruins 1 Washington Capitals 2 Dallas Stars 2 St. Louis Blues 1 然而,在我的面板上,它是这样输出的: Boston Bruins 1 Washington Capitals 2 Dallas Stars 2 St. Louis Blues 1 在我的文件中

我正在用java为一个学校项目应用程序创建一个GUI,我们基本上是在尝试输出曲棍球比赛的分数(从文件中读取),并将其以标签形式输出到屏幕上,如下所示:

Boston Bruins 1  
Washington Capitals 2

Dallas Stars 2  
St. Louis Blues 1
然而,在我的面板上,它是这样输出的:

Boston Bruins 1 Washington Capitals 2 Dallas Stars 2 St. Louis Blues 1
在我的文件中,其格式如下:

Boston Bruins
1
Washington Capitals
2
这是我的密码:

for (int m = 0; m < 6; m++) {
            
    JLabel l = new JLabel(nhlAug6[m].getTeamName() + nhlAug6[m].getScores() + "</p></html>");
    
    if (m % 2 != 0) {
       JLabel moderator = new JLabel("<html> <br/> </html>");
       showNhlP.add(moderator);
    } 

    l.setBounds(100, 500, 300, 50);
    showNhlP.add(l);
for(int m=0;m<6;m++){
JLabel l=newjlabel(nhlAug6[m].getTeamName()+nhlAug6[m].getScores()+“

”; 如果(m%2!=0){ JLabel主持人=新的JLabel(“
”); showNhlP.add(主持人); } l、 立根(10050030050); showNhlP.add(l);

提前感谢您的帮助

如果我没有记错,默认情况下,
JLabel
会折叠遇到的任何换行符

但是您可以使用文本
作为字符串的前缀,这会导致标签文本接受HTML代码(可能只是其中的一个子集)

现在您可以用

替换换行符,这样就可以了

JLabel标签=新的JLabel();
label.setText(“一行
和另一行”);
请编辑您的问题以提供一些示例数据。该文件看起来像什么?另外,请提供一个。换句话说,提供我们可以复制、粘贴和运行的工作代码,但不是所有的代码。您是否尝试过使用setText()方法?提供如何获取nhlAug6数组。我确实尝试过,使用此代码
JLabel=new JLabel();l.setText(“+nhlAug6[m].getTeamName()+”+nhlAug6[m].getScores()+“
”)
;它仍然不起作用unfortunately@Gianluca嗯,你在文章的结尾只使用了一个

。这不是一个好的测试用例。我已经编辑了答案,你应该试试我放在那里的代码。我很感谢你的帮助,刚刚看到了代码。效果很好,但奇怪的是,当我放nhlAug6[m].getScores()时它不起作用在这里,如果
nhlAug6[m].getScores()
返回一个包含换行符的字符串,则必须将其替换为