Can MATLAB read .txt like FORTRAN?

If you have used FORTRAN, you will know that FORTRAN's formatted reading allows you to directly specify the number of characters to be read and their positions. These characters include spaces. If a variable in the specified position encounters a space, FORTRAN will automatically assign zero. However, in MATLAB, if formatted reading encounters a space, it will simply skip it. Is there any method to make MATLAB read in a way similar to FORTRAN?

 Accepted Answer

Star Strider
Star Strider on 23 Jan 2024
Yes.
Use the fixedWidthImportOptions function to define the field widths, then use that in conjunction with readtable to read the file.
It can be a bit of a challenge (and requires some experimentation) when initially encountered, however it definitely works.

3 Comments

I will try it . Thank you.
A much easier approach is to call DETECTIMPORTOPTIONS with its option "FileType" set to "fixedwidth".
Read this discussion to know why:
@gerway — As always, my pleasure!

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2023a

Asked:

on 23 Jan 2024

Commented:

on 23 Jan 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!