G'day char_perl,
Welcome to the Monastery.
Use the sprintf function to specify the precision you want:
#!/usr/bin/env perl -l use strict; use warnings; my $value = 0.9888; print '"%.2f" --> ', sprintf '%.2f', $value; print '"%.4f" --> ', sprintf '%.4f', $value; print '"%.8f" --> ', sprintf '%.8f', $value;
Output:
$ pm_1131769_output_precision.pl "%.2f" --> 0.99 "%.4f" --> 0.9888 "%.8f" --> 0.98880000
Also note that there is a printf function, but this has a number of gotchas. They're described in the documentation; although, you may just want to follow the advice on the last line:
"Don't fall into the trap of using a printf when a simple print would do. The print is more efficient and less error prone."
-- Ken
In reply to Re: Spreadsheet::Read module is rounding the decimals in XLSX file
by kcott
in thread Spreadsheet::Read module is rounding the decimals in XLSX file
by char_perl
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |