来自RAF的Java格式输出字符串
我试图在一个文本区域GUI中从RAF输出数据。我得到了输出(标题的长度不同,但最多35个字符),但所有将字符串放入列的尝试都失败了 这就是我目前拥有的:来自RAF的Java格式输出字符串,java,string,format,randomaccessfile,Java,String,Format,Randomaccessfile,我试图在一个文本区域GUI中从RAF输出数据。我得到了输出(标题的长度不同,但最多35个字符),但所有将字符串放入列的尝试都失败了 这就是我目前拥有的: while (count < noItems) { String title = ""; for (int i = 0; i < 35; i++) { title += raf.readChar(); } int noCopies = raf.readInt(); doub
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);
while(计数
可能是您在一个字符串中添加所有列时超过了字符串的最大长度(2^31-1)(因此所有将字符串放入列的尝试都失败)。每次在while
循环中尝试添加JTextArea(mainTextArea
)中的每一列。试试这个代码
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++;
}
while(计数
删除多余部分,为清晰起见重新编写,固定格式。