


# write method








[WriteResult](../../zircon/WriteResult-class.md) write
(ByteData data, [int options = 0])








## Implementation

```dart
WriteResult write(ByteData data, [int options = 0]) {
  if (handle == null) {
    return const WriteResult(ZX.ERR_INVALID_ARGS);
  }

  return System.socketWrite(handle!, data, options);
}
```







