---
title: "CFStringCreateWithBytes(_:_:_:_:_:)"
framework: corefoundation
role: symbol
role_heading: Function
path: "corefoundation/cfstringcreatewithbytes(_:_:_:_:_:)"
---

# CFStringCreateWithBytes(_:_:_:_:_:)

Creates a string from a buffer containing characters in a specified encoding.

## Declaration

```swift
func CFStringCreateWithBytes(_ alloc: CFAllocator!, _ bytes: UnsafePointer<UInt8>!, _ numBytes: CFIndex, _ encoding: CFStringEncoding, _ isExternalRepresentation: Bool) -> CFString!
```

## Parameters

- `alloc`: The allocator to use to allocate memory for the new string. Pass NULL or doc://com.apple.corefoundation/documentation/CoreFoundation/kCFAllocatorDefault to use the current default allocator.
- `bytes`: A buffer containing characters in the encoding specified by encoding. The buffer must not contain a length byte (as in Pascal buffers) or any terminating NULL character (as in C buffers).
- `numBytes`: The number of bytes in bytes.
- `encoding`: The string encoding of the characters in the buffer.
- `isExternalRepresentation`: true if the characters in the byte buffer are in an “external representation” format—that is, whether the buffer contains a BOM (byte order marker). This is usually the case for bytes that are read in from a text file or received over the network. Otherwise, pass false.

## Return Value

Return Value An immutable string, or NULL if there was a problem creating the object. Ownership follows the The Create Rule.

## Discussion

Discussion This function handles character data in an “external representation” format by interpreting any BOM (byte order marker) character and performing any necessary byte swapping.

## See Also

### Creating a CFString

- [CFStringCreateArrayBySeparatingStrings(_:_:_:)](corefoundation/cfstringcreatearraybyseparatingstrings(_:_:_:).md)
- [CFStringCreateByCombiningStrings(_:_:_:)](corefoundation/cfstringcreatebycombiningstrings(_:_:_:).md)
- [CFStringCreateCopy(_:_:)](corefoundation/cfstringcreatecopy(_:_:).md)
- [CFStringCreateFromExternalRepresentation(_:_:_:)](corefoundation/cfstringcreatefromexternalrepresentation(_:_:_:).md)
- [CFStringCreateWithBytesNoCopy(_:_:_:_:_:_:)](corefoundation/cfstringcreatewithbytesnocopy(_:_:_:_:_:_:).md)
- [CFStringCreateWithCharacters(_:_:_:)](corefoundation/cfstringcreatewithcharacters(_:_:_:).md)
- [CFStringCreateWithCharactersNoCopy(_:_:_:_:)](corefoundation/cfstringcreatewithcharactersnocopy(_:_:_:_:).md)
- [CFStringCreateWithCString(_:_:_:)](corefoundation/cfstringcreatewithcstring(_:_:_:).md)
- [CFStringCreateWithCStringNoCopy(_:_:_:_:)](corefoundation/cfstringcreatewithcstringnocopy(_:_:_:_:).md)
- [CFStringCreateWithFormatAndArguments(_:_:_:_:)](corefoundation/cfstringcreatewithformatandarguments(_:_:_:_:).md)
- [CFStringCreateWithPascalString(_:_:_:)](corefoundation/cfstringcreatewithpascalstring(_:_:_:).md)
- [CFStringCreateWithPascalStringNoCopy(_:_:_:_:)](corefoundation/cfstringcreatewithpascalstringnocopy(_:_:_:_:).md)
- [CFStringCreateWithSubstring(_:_:_:)](corefoundation/cfstringcreatewithsubstring(_:_:_:).md)
