---
title: "init(forWritingWith:)"
framework: foundation
role: symbol
role_heading: Initializer
path: "foundation/nskeyedarchiver/init(forwritingwith:)"
---

# init(forWritingWith:)

Initializes an archiver to encode data into a given a mutable-data object.

## Declaration

```swift
init(forWritingWith data: NSMutableData)
```

## Parameters

- `data`: The mutable-data object into which the archive is written.

## Discussion

Discussion When you finish encoding data, you must invoke finishEncoding() at which point data is filled. The format of the receiver is NSPropertyListBinaryFormat_v1_0.

## See Also

### Related Documentation

- [Archives and Serializations Programming Guide](apple-archive/documentation/Cocoa/Conceptual/Archiving.md)

### Creating a Keyed Archiver

- [init(requiringSecureCoding:)](foundation/nskeyedarchiver/init(requiringsecurecoding:).md)
- [init()](foundation/nskeyedarchiver/init().md)
