# sprintf 5.0.0

Dart implementation of sprintf. Provides simple printf like formatting such as sprintf("hello %s", ["world"]);




## Installing
```
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.ir
flutter pub add 'sprintf:5.0.0'
```
Published: 2020-09-26T02:03:09.537290Z
Expected archive SHA-256: b6041625ba960702d833168e86f8ab7cbf1c0f45258b76d2c61654121b71c27a

Available in cache; verification: upstream_checksum
## Direct dependencies

## Package README (untrusted upstream documentation)
# dart-sprintf

Dart implementation of sprintf.

[![Build Status](https://travis-ci.org/Naddiseo/dart-sprintf.svg?branch=master)](https://travis-ci.org/Naddiseo/dart-sprintf/)

## ChangeLog

[ChangeLog.md](CHANGELOG.md)

## Getting Started

Add the following to your **pubspec.yaml**:

```
dependencies:
  sprintf: "^4.0.0"
```

then run **pub install**.

Next, import dart-sprintf:

```
import 'package:sprintf/sprintf.dart';
```

### Example

```
import 'package:sprintf/sprintf.dart';

void main() {
	print(sprintf("%04i", [-42]));
	print(sprintf("%s %s", ["Hello", "World"]));
	print(sprintf("%#04x", [10]));
}
```

```
-042
Hello World
0x0a
```

## Limitations

- Negative numbers are wrapped as 64bit ints when formatted as hex or octal.

Differences to C's printf

- When using fixed point printing of numbers with large exponents, C introduces errors after 20 decimal places. Dart-printf will just print 0s.

## Changelog
v5.0.0 (2020-09-25)

    * Fix #22: position arguments didn't work. Major version bump because it's
      a different API. The following now works:
      ```
      sprintf('|%2\$d %2\$d %1\$d|', [5, 10]); // '|10 10 5|'
      ```


v4.1.0 (2020-07-26)

    * Used dart padentic to fix up some code
    * changed SDK requirements to be >=2, <3

v4.0.3 (2020-07-26)

    * Fixed formatting of "1.0" (#18); it was being truncated to "1" and then
      failing the regex.

v4.0.2 (2019-02-19)

    * Fixed v4.0.1
    * Fixed rounding bug if 0 or 1 digits of rounding are requested (#15)

v4.0.1 (2019-02-19)

    * **BROKEN** Fixed rounding bug if 0 or 1 digits of rounding are requested (#15)

v4.0.0 (2018-07-02)

    * **Breaking change** (#13)
      As of dart 2, int types are going to be fixed width, and the width depends on
      implementation (dart2js vs dartvm). Dart started warning about constants that
      are greater than the max int of javascript. To fix that, this patch will limit
      int (when formatted as hex or octal) to the max limit of javascript (2**53 - 1).
      Any int outside of the +-(2**53 -1) range is not guaranteed to format correctly!

v3.0.2 (2017-08-17)

    * Fixed bad publish

v3.0.1 (2017-08-17)

    * Fixed weak typing which stopped dartdevc from working (#11 thanks @bergwerf)

v3.0.0 (2017-04-20)

    * Fixed rounding of floats, again. Bumping major version because it's different from previous behaviour

v2.0.0 (2017-03-23)

    * Fixed rounding of floats. Bumping major version, because previous behaviour was to always round down.

v1.1.1 (2016-11-16)

    * Updated to use `test` library since `unittest` has been deprecated.

v1.1.0 (2014-08-21)

    * **API change**: Any object with a valid `toString` method can be formatted with `'%s'` (#7)

v1.0.9 (2013-12-15)

    * Round numbers when they're truncated. (#6)

v1.0.8 (2013-10-08)

    * Remove trailing decimal point if there are no following digits (#6)

v1.0.7 (2013-05-07)

    * Update for new dart version

v1.0.6 (2013-04-16)

    * Update for new dart version

v1.0.5 (2013-03-25)

    * Fixed dependencies example in README (#5)

v1.0.4 (2013-03-21)

    * Update for new dart version

    * Update for new pubspec format

v1.0.3 (2013-02-12)

    * Update for dart M2

v1.0.2 (2013-01-21)

    * Pubspec and whitespace fixes

v1.0.1 (2012-11-12)

    * Update for new dart version

v1.0.0 (2012-10-08)

    First release with semver







 
