<!--
{
  "availability" : [
    "iOS: 16.0.0 -",
    "iPadOS: 16.0.0 -",
    "macCatalyst: 16.0.0 -",
    "macOS: 13.0.0 -",
    "tvOS: 16.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 9.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/Measurement/FormatStyle/ByteCount/init(style:allowedUnits:spellsOutZero:includesActualByteCount:locale:)",
  "metadataVersion" : "0.1.0",
  "role" : "Initializer",
  "symbol" : {
    "kind" : "Initializer",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "s:10Foundation11MeasurementVAASo11NSDimensionCRbzrlE11FormatStyleVAASo24NSUnitInformationStorageCRszrlE9ByteCountV5style12allowedUnits13spellsOutZero014includesActualiJ06localeAKyAI__GAA0ijdE0V0E0O_AS0M0VS2bAA6LocaleVtcfc"
  },
  "title" : "init(style:allowedUnits:spellsOutZero:includesActualByteCount:locale:)"
}
-->

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

Initializes a byte count format style.

```
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

In situations that infer the [`Measurement.FormatStyle.ByteCount`](/documentation/Foundation/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()`](/documentation/Foundation/Measurement/formatted()) on a [`Measurement`](/documentation/Foundation/Measurement) whose unit type is [`UnitInformationStorage`](/documentation/Foundation/UnitInformationStorage).

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)