---
title: "init(style:allowedUnits:spellsOutZero:includesActualByteCount:locale:)"
framework: foundation
role: symbol
role_heading: Initializer
path: "foundation/measurement/formatstyle/bytecount/init(style:allowedunits:spellsoutzero:includesactualbytecount:locale:)"
---

# init(style:allowedUnits:spellsOutZero:includesActualByteCount:locale:)

Initializes a byte count format style.

## Declaration

```swift
init(style: Measurement<UnitType>.FormatStyle.ByteCount.Style, allowedUnits: Measurement<UnitType>.FormatStyle.ByteCount.Units, spellsOutZero: Bool, includesActualByteCount: Bool, locale: Locale)
```

## Parameters

- `style`: The style of byte count to express, such as memory or file system storage.
- `allowedUnits`: The units the format style can use to express the byte count.
- `spellsOutZero`: A Boolean value that indicates whether the format style should spell out zero-byte values as text, like Zero kB.
- `includesActualByteCount`: A Boolean value that indicates whether the format style should include the exact byte count, in addition to expressing it in terms of units. For example, 1 kB (1,024 bytes).
- `locale`: The locale to use to format the numeric part of the byte count.

## Discussion

Discussion In situations that infer the Measurement.FormatStyle.ByteCount type, you can call Measurement/FormatStyle/ByteCount/byteCount(style:allowedUnits:spellsOutZero:includesActualByteCount:) instead of explicitly using this initializer. This is the case when you call formatted() on a Measurement whose unit type is UnitInformationStorage.
