为什么我的代码不打印任何东西?

时间:2017-05-16 17:32:46

标签: java

我正在寻找一种有效的方法来打印我的输出,我找到了this文章。

但是我使用以下代码来测试它,但它没有显示任何输出。

import java.io.OutputStreamWriter;
import java.io.BufferedWriter;
import java.io.IOException;
class NewClass {
    public static void main(String args[] ) throws Exception {
        Printy p=new Printy();
        p.printLine("JAVA");
    }
}

class Printy
{
    private final BufferedWriter bw;
    public Printy()
    {
        bw=new BufferedWriter(new OutputStreamWriter(System.out));
    }
    public void print(String str)throws IOException
    {
        bw.append(str);
    }
    public void printLine(String str)throws IOException
    {
        print(str);
        bw.append("\n");
    }
    public void close()throws IOException
    {
        bw.close();
    }
} 

这里有什么问题以及如何正确实施?

1 个答案:

答案 0 :(得分:2)

您需要flush缓冲区,否则文本将位于缓冲区中而不会被打印。

在附加文本后添加对flush的调用。