Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Fortran Help. Reading space delimited floats

  1. Sep 23, 2012 #1
    Hi all, long time lurker: finally have a question I couldn't find already answered.

    I'm doing some work with Fortran95 for a research project, and I'm a complete noob, so pardon me. The issue is that I have some data I'd like to read from a text file in double precision that is between 7 and 10 digits long on a single line (ex: 156.254569 25.485975 2.698757) and no pattern to how many digits (1-3) before the decimal. I'd thought about maybe doing something funky like turning them into strings then breaking it up into three strings somehow and turning each back into a float, but I'm not entirely sure how I'd go about it. As well, there are ~30k lines and each will be read at least 3 times for computations, so I'd like to keep it as simple as possible to speed up calculations. Anyone have a neat solution (or an ugly one) for this?

    Thanks in advance
  2. jcsd
  3. Sep 23, 2012 #2


    User Avatar

    Staff: Mentor

    Have you tried using the default format that a * format specifier gives you?

    read (unit_num, *) a, b, c

    (with a, b, c declared as having the appropriate precision, of course)
  4. Sep 23, 2012 #3
    This worked! I tried it without high hopes because theres letters before the floats on each line, but adding a dummy variable formatted as a string, it read everything without a hiccup. Thanks so much!
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook