有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在使用printwriter时删除新行

我试图打印出附加在日志文件末尾的任何更改,类似于tail log。但当用printwriter打印出来时,它也会打印出一行新的内容。 而不是印刷

test1 
test2

它打印:

test1

test2

代码如下。我试过用pwriter。打印(行)而不是打印LN,但不打印任何内容。有没有办法移除回车键

public class Lognow implements Runnable{
boolean execute = true;

InputStreamReader inputStreamReader;
BufferedReader bufferedReader;
PrintWriter pwriter;

public Lognow(){
PrintWriter pw = new PrintWriter(System.out, true);
try {

     inputStreamReader = new InputStreamReader(new FileInputStream ("D:/app/logi.txt"));
     bufferedReader = new BufferedReader (inputStreamReader);
     String line = bufferedReader.readLine();
     while(line!=null){          
         line = bufferedReader.readLine();
     }

     pwriter = pw;

} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}
}

public void run() {
    while( execute ) {
        try {
            String str="";
            String line = bufferedReader.readLine();

            if(line!=null) {

                pwriter.println(line);

            }
            else {
                try {
                    Thread.sleep( 500 );
                }
                catch( InterruptedException ex )
                {
                    execute = false;
                }
            }


        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

public static void main(String[] args){
    Lognow lognow = new Lognow();
    lognow.run();
}

共 (1) 个答案

  1. # 1 楼答案

    不要使用println()。改用print()flush()