0

I'm trying to create a log file in java, but the problem is, Whenever any thing is writing inside the log file(.txt file) it is showing the date and time . I want this to be removed every time when I'm writing anything inside the logfile.

import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter;

public class Logfile {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        Logger logger = Logger.getLogger("MyLog");  
        FileHandler fh;  

        try {  


            fh = new FileHandler("D:\\New/MyLogFile.log");  
            logger.addHandler(fh);
            SimpleFormatter formatter = new SimpleFormatter();  
            fh.setFormatter(formatter);  


            logger.info("My first log");  

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

        logger.info("Hi How r u?");  



    }

    }

Aug 21, 2019 4:33:51 PM Log.Logfile main INFO: My first log Aug 21, 2019 4:33:51 PM Log.Logfile main INFO: Hi How r u?

Markus
  • 2,071
  • 4
  • 22
  • 44
sai
  • 13
  • 4

1 Answers1

0

You have to define a custom Formatter which provides a format function

public class MyCustomFormatter extends Formatter {
    @Override
    public String format(LogRecord message) {
        StringBuffer sb = new StringBuffer();
        sb.append(record.getLevel());
        sb.append(": ");
        sb.append(record.getMessage());
        return sb.toString();
    }
}

And assign you custom formatter

fh.setFormatter(new MyCustomFormatter());

Provided log

logger.info("My first log");

will result in

INFO: My first log

Please read LogRecord documentation to log more informations

IQbrod
  • 2,060
  • 1
  • 6
  • 28