Java 为什么要将字符串变为空?
如果我运行这段代码,append.txt的前28行充满了数字,但是它是空的,为什么?它还应该包含一些数字!! 绳子太大了吗Java 为什么要将字符串变为空?,java,Java,如果我运行这段代码,append.txt的前28行充满了数字,但是它是空的,为什么?它还应该包含一些数字!! 绳子太大了吗 try { OutputStream os = new FileOutputStream(new File("append.txt"), true); String seq = "11", output = ""; int u = 1; while(u<=37) {
try {
OutputStream os = new FileOutputStream(new File("append.txt"), true);
String seq = "11", output = "";
int u = 1;
while(u<=37)
{
String temp = "";
int iter = 1;
for(int i=0; i<seq.length()-1; i++) {
if(seq.charAt(i)==seq.charAt(i+1)) {
iter++;
if(i==seq.length()-2) {
temp += iter + "" + seq.charAt(i);
iter=1;
}
}else {
temp += iter + "" + seq.charAt(i);
if(i==seq.length()-2) {
temp += "1" + seq.charAt(i+1);
}
iter=1;
}
}
seq=temp;
output += seq + "\n";
System.out.println(u + ": " + seq.length());
u++;
}
os.write(output.getBytes(), 0, output.length());
os.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
试试看{
OutputStream os=新文件OutputStream(新文件(“append.txt”),true;
字符串seq=“11”,输出=”;
INTU=1;
(uOk,我有一个解决方案:
我使用Eclipse来显示文本文件,但它神奇地不显示文件的其余部分。如果我使用任何其他文本编辑器,它将显示其余部分。可能Eclipse txt编辑器只能显示有限的文本…如果字符串太大而无法创建,您将得到OutOfMemoryException
。事实并非如此,您可以这样做r程序工作并打印37行数字,最后一行长度为48410个字符
您用于查看输出的编辑器很可能无法呈现这些很长的行。它在IntelliJ IDEA中对我有效。,我尝试了您的代码,它打印了37行文本。您如何查看输出文件?虽然字符串长度和字节[],但这似乎工作正常长度并不总是相同的,在本例中它们似乎是相同的,所以只需使用os.write(output.getBytes());是的,就是这样。我正在使用eclipse的内部编辑器…:)