我需要我的程序在一定数量的字符后换行,就像在 Microsoft Word 中一样。该程序应该采用大文本并将其转换为全大写或全小写。它最终会跑出屏幕的末端,而我买不起更大的。
我目前拥有的只是在字符后面换行,可能在单词中间,这最终看起来很奇怪。
int linecount = 0;
for(int i = 0; i < ask.length(); i++)
{
askformat += ask.charAt(i);
linecount++;
if (linecount==50)
{
askformat += '\n';
linecount = 0;
}
}
最佳答案
如果它是一个 GUI 应用程序并且您使用的是 JTextArea,则只需添加以下行:
jta.setLineWrap(true)
jta.setWrapStyleWord(true)
其中 jta 是您的 JTextArea 实例。
参见Java API .
编辑:根据@BackSlash的建议添加了setWrapStyleWord
,如果输入的文本预计有空格分隔符(如真实文本),则更合适。这与 Word 文档的换行方式相同。为了澄清起见,区别在于 setLineWrap
会在任何字符边界后添加新行(因此,当 JTA 区域的整个宽度被填充时,无论它是否是中间单词,这些行都会分开或不),而使用 setWrapStyleWord
它将在空白边界添加新行,这意味着文本将在单词之后换行(除非行上没有空白,在这种情况下,它将表现出相同的功能作为setLineWrap
)
关于java - 像word文档一样另起一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21303085/