:orphan:
# PetscViewerVTKFWrite
write binary data preceded by 32-bit int length (in bytes), does not do byte swapping. 
## Synopsis
```
#include "petscviewer.h" 
PetscErrorCode PetscViewerVTKFWrite(PetscViewer viewer, FILE *fp, const void *data, PetscInt n, MPI_Datatype dtype)
```
Logically Collective


## Input Parameters

- ***viewer -*** logically collective viewer, data written from rank 0
- ***fp -*** file pointer valid on rank 0
- ***data -*** data pointer valid on rank 0
- ***n -*** number of data items
- ***dtype -*** data type





## Note
If `PetscScalar` is `__float128` then the binary files are written in double precision


## See Also
 [](sec_viewers), `PETSCVIEWERVTK`, `DMDAVTKWriteAll()`, `DMPlexVTKWriteAll()`, `PetscViewerPushFormat()`, `PetscViewerVTKOpen()`, `PetscBinaryWrite()`

## Level
developer

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/sys/classes/viewer/impls/vtk/vtkv.c.html#PetscViewerVTKFWrite">src/sys/classes/viewer/impls/vtk/vtkv.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/classes/viewer/impls/vtk/vtkv.c)


[Index of all Viewer routines](index.md)  
[Table of Contents for all manual pages](/manualpages/index.md)  
[Index of all manual pages](/manualpages/singleindex.md)  
