<!--
{
  "availability" : [
    "iOS: 8.0.0 -",
    "iPadOS: 8.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.10.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Swift",
  "identifier" : "/documentation/Swift/Unicode/UTF8/encode(_:into:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "Swift"
    ],
    "preciseIdentifier" : "s:s7UnicodeO4UTF8O6encode_4intoyAB6ScalarV_ys5UInt8VXEtFZ"
  },
  "title" : "encode(_:into:)"
}
-->

# encode(_:into:)

Encodes a Unicode scalar as a series of code units by calling the given
closure on each code unit.

```
static func encode(_ input: Unicode.Scalar, into processCodeUnit: (Unicode.UTF8.CodeUnit) -> Void)
```

## Parameters

`input`

The Unicode scalar value to encode.

`processCodeUnit`

A closure that processes one code unit argument at a
time.

## Discussion

For example, the musical fermata symbol (“𝄐”) is a single Unicode scalar
value (`\u{1D110}`) but requires four code units for its UTF-8
representation. The following code encodes a fermata in UTF-8:

```
var bytes: [UTF8.CodeUnit] = []
UTF8.encode("𝄐", into: { bytes.append($0) })
print(bytes)
// Prints "[240, 157, 132, 144]"
```

---

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)