---
title: "getBytes(_:maxLength:usedLength:encoding:options:range:remaining:)"
framework: foundation
role: symbol
role_heading: Instance Method
path: "foundation/nsstring/getbytes(_:maxlength:usedlength:encoding:options:range:remaining:)"
---

# getBytes(_:maxLength:usedLength:encoding:options:range:remaining:)

Gets a given range of characters as bytes in a specified encoding.

## Declaration

```swift
func getBytes(_ buffer: UnsafeMutableRawPointer?, maxLength maxBufferCount: Int, usedLength usedBufferCount: UnsafeMutablePointer<Int>?, encoding: UInt, options: NSString.EncodingConversionOptions = [], range: NSRange, remaining leftover: NSRangePointer?) -> Bool
```

## Parameters

- `buffer`: A buffer into which to store the bytes from the receiver. The returned bytes are not NULL-terminated.
- `maxBufferCount`: The maximum number of bytes to write to buffer.
- `usedBufferCount`: The number of bytes used from buffer. Pass NULL if you do not need this value.
- `encoding`: The encoding to use for the returned bytes. For possible values, see doc://com.apple.foundation/documentation/Foundation/NSStringEncoding.
- `options`: A mask to specify options to use for converting the receiver’s contents to encoding (if conversion is necessary).
- `range`: The range of characters in the receiver to get.
- `leftover`: The remaining range. Pass NULL If you do not need this value.

## Return Value

Return Value true if some characters were converted, otherwise false.

## Discussion

Discussion Conversion might stop when the buffer fills, but it might also stop when the conversion isn’t possible due to the chosen encoding.

## See Also

### Getting Characters and Bytes

- [character(at:)](foundation/nsstring/character(at:).md)
- [getCharacters(_:range:)](foundation/nsstring/getcharacters(_:range:).md)
