:orphan:
# PetscViewerASCIIOpen
Opens an ASCII file for writing as a `PETSCVIEWERASCII` `PetscViewer`.
## Synopsis
```
#include "petscviewer.h"
PetscErrorCode PetscViewerASCIIOpen(MPI_Comm comm, const char name[], PetscViewer *lab)
```
Collective
## Input Parameters
- ***comm -*** the communicator
- ***name -*** the file name
## Output Parameter
- ***lab -*** the `PetscViewer` to use with the specified file
## Notes
To open a ASCII file as a viewer for reading one must use the sequence
```none
PetscViewerCreate(comm,&lab);
PetscViewerSetType(lab,PETSCVIEWERASCII);
PetscViewerFileSetMode(lab,FILE_MODE_READ);
PetscViewerFileSetName(lab,name);
```
This `PetscViewer` can be destroyed with `PetscViewerDestroy()`.
The MPI communicator used here must match that used by the object one is viewing. For example if the
Mat was created with a `PETSC_COMM_WORLD`, then the Viewer must be created with `PETSC_COMM_WORLD`
As shown below, `PetscViewerASCIIOpen()` is useful in conjunction with
`MatView()` and `VecView()`
```none
PetscViewerASCIIOpen(PETSC_COMM_WORLD,"mat.output",&viewer);
MatView(matrix,viewer);
```
## See Also
[](sec_viewers), `MatView()`, `VecView()`, `PetscViewerDestroy()`, `PetscViewerBinaryOpen()`, `PetscViewerASCIIRead()`, `PETSCVIEWERASCII`
`PetscViewerASCIIGetPointer()`, `PetscViewerPushFormat()`, `PETSC_VIEWER_STDOUT_`, `PETSC_VIEWER_STDERR_`,
`PETSC_VIEWER_STDOUT_WORLD`, `PETSC_VIEWER_STDOUT_SELF`,
## Level
beginner
## Location
src/sys/classes/viewer/impls/ascii/vcreatea.c
## Examples
src/ksp/ksp/tutorials/ex54.c
src/ksp/ksp/tutorials/ex55.c
src/ksp/ksp/tutorials/ex56.c
src/ksp/ksp/tutorials/ex72.c
src/snes/tutorials/ex15.c
src/snes/tutorials/ex1f.F90
src/snes/tutorials/ex48.c
src/snes/tutorials/ex70.c
src/ts/tutorials/ex14.c
src/ts/tutorials/ex9.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/classes/viewer/impls/ascii/vcreatea.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)