How to stop java from using logging from formatting my numbers

I use Java Util logging and whenever I execute a statement like

logger.log(Level.INFO, "print this number = {0}", number); 

it formats my number from 278487683165614 to 278,487,683,165,614

this is very annoying when searching through magazines.

Can I stop it from doing this? Please help.

+7
source share
3 answers

Try one of the following (do not look at the type of the number object):

  • Using String.valueOf()

     logger.log(Level.INFO, "print this number = {0}", String.valueOf(number)); 
  • Using Number.toString

     logger.log(Level.INFO, "print this number = {0}", number.toString); 
  • Using NumberFormat.setGroupingUsed(false)

     NumberFormat formatter = new NumberFormat(); formatter.setGroupingUsed(false); logger.log(Level.INFO, "print this number = {0}", formatter.format(number)); 
+2
source

The default format is not what you want, change it like this:

 {0,number,#} 

EDIT:

Here you have more information about MessageFormatPattern http://docs.oracle.com/javase/1.5.0/docs/api/java/text/MessageFormat.html

+6
source

Have you tried number.toString() ?

+2
source

All Articles