snnth
snnth

Reputation: 371

how to printf a long typed value using input size modifier?

This is basically what I am trying to do

// ... some code, calculations, what have you ...
long timeToAdd = returnTimeToAddInLongFormat();

// lets output the long type now, and yes i need the width and precision.
System.out.printf("Time to add: %13.10ld", timeToAdd);

I've read most of the google searches around the topic and think I understand how to do it conceptually, but the JRE keeps throwing me a UnknownFormatConversionException and telling me my input size modifier l doesnt work.

Is there another way to do this, or did I miss something small?

Upvotes: 19

Views: 39936

Answers (1)

Peter Lawrey
Peter Lawrey

Reputation: 533780

Java treats all integer values as d, there is no ld. Even byte and BigInteger is a d type. It also assumes integers have no decimal places. If you want to show 10 zeros, you can convert to double first and use f

Upvotes: 27

Related Questions