int X265_NS::frameNumber;
int X265_NS::frameSize;
using namespace X265_NS; // for subsequent code that uses those variables
和输出是 跑: 123456BUILD SUCCESSFUL(总时间:0秒)
但是在文件中没有数据
答案 0 :(得分:3)
This是write
方法的作用:
通常,此方法将给定数组中的字符存储到 这个流的缓冲区,将缓冲区刷新到底层流 需要的。
因此,它写入buffer
而不是直接写入文件。要制作缓冲区flush
,您需要调用flush
或close
方法,例如:
File output = new File("C:\\\\MDU-1617-CSJ0098\\\\web\\\\products.txt");
BufferedWriter writer1 = new BufferedWriter(new FileWriter(output));
while (q_set2.next()) {
String s = String.valueOf(q_set2.getInt(1));
System.out.print(s);
writer1.write(s);
writer1.newLine();
}
writer1.close();
close()
在内部调用flush()
因此,在这种情况下,您无需明确调用flush()
(此处为Javadoc)。
答案 1 :(得分:0)
当您致电BottomSheetDimmedFragment sheet = new BottomSheetDimmedFragment();
sheet.show(this);
时,您实际上并未在文件中打印任何内容,而是将数据收集到内存中。收集完所有数据后,您可以通过调用writer1.write(s)
将所有数据一次性写入文件。
这是因为写入文件是一项代价高昂的操作,因此flush()
的设计方式使其便于一次写入所有数据,而不是以块的形式写入。
这就是你需要刷新流的原因。
public void flush()抛出IOException
刷新流。
现在你可以......
BufferedWriter
方法或flush()
方法。
flush()