我试图在文本区域GUI中输出来自RAF的数据。我得到输出(标题长度不同,但最多35个字符),但所有将String放入列的尝试都失败了。
这就是我目前所拥有的:
while (count < noItems) {
String title = "";
for (int i = 0; i < 35; i++) {
title += raf.readChar();
}
int noCopies = raf.readInt();
double price = raf.readDouble();
result+=String.format("%-40s", title);
result+=(noCopies+"\t "+ twoDigit.format(price)+"\n");
count++;
}
mainTextArea.setText(result);
答案 0 :(得分:0)
当您在一个字符串result
中添加所有列时,可能超过字符串的最大长度(2 ^ 31 - 1)(因此所有尝试将String放入列中失败)。每次在mainTextArea
循环中尝试添加JTextArea(while
)中的每个列。试试这段代码,
while (count < noItems) {
String title = "";
for (int i = 0; i < 35; i++) {
title += raf.readChar();
}
int noCopies = raf.readInt();
double price = raf.readDouble();
result = String.format("%-40s", title) + (noCopies+"\t "+ twoDigit.format(price)+"\n");
mainTextArea.setText(result);
count++;
}