---
title: "init(base64EncodedString:options:)"
framework: foundation
role: symbol
role_heading: Initializer
path: "foundation/nsdata/init(base64encodedstring:options:)"
---

# init(base64EncodedString:options:)

Initializes a data object with the given Base64 encoded string.

## Declaration

```swift
init?(base64EncodedString base64String: String, options: NSData.Base64DecodingOptions = [])
```

## Parameters

- `base64String`: A Base-64 encoded string.
- `options`: A mask that specifies options for Base-64 decoding the data. Possible values are given in doc://com.apple.foundation/documentation/Foundation/NSData/Base64DecodingOptions.

## Return Value

Return Value A data object built by Base64 decoding the provided string. Returns nil if the data object could not be decoded.

## Discussion

Discussion The default implementation of this method will reject non-alphabet characters, including line break characters. To support different encodings and ignore non-alphabet characters, specify an options value of ignoreUnknownCharacters.

## See Also

### Encoding and Decoding Base64 Representations

- [init(base64EncodedData:options:)](foundation/nsdata/init(base64encodeddata:options:).md)
- [init(base64Encoding:)](foundation/nsdata/init(base64encoding:).md)
- [base64EncodedData(options:)](foundation/nsdata/base64encodeddata(options:).md)
- [base64EncodedString(options:)](foundation/nsdata/base64encodedstring(options:).md)
- [base64Encoding()](foundation/nsdata/base64encoding().md)
- [NSData.Base64EncodingOptions](foundation/nsdata/base64encodingoptions.md)
- [NSData.Base64DecodingOptions](foundation/nsdata/base64decodingoptions.md)
