[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Help with reading structure from file
- Subject: Help with reading structure from file
- From: jeyadev(at)wrc.xerox.com (Surendar Jeyadev)
- Date: 6 Feb 2001 23:48:12 GMT
- Newsgroups: comp.lang.idl-pvwave
- Organization: Xerox Corporation
- Reply-To: jeyadev(at)wrc.xerox.com
- Xref: news.doit.wisc.edu comp.lang.idl-pvwave:23407
In the loosing battle with the Excel users, the latest direct hit was reading
in a file that contained strings and numeric data in each line. Having given
up (and as the only hold out against Excel!), I need HEEELLLPPP.
This is the simplified problem. I am trying to read data in the following
format:
001a 312.194 76.922 296.301 21.462 0.453 289.515 0.957
001b 363.748 106.090 506.188 19.430 0.528 347.252 1.176
001c 398.248 138.541 724.470 17.152 0.578 383.534 1.701
002a 294.593 28.525 248.744 8.532 0.428 290.497 1.268
002b 353.415 46.290 449.015 7.974 0.513 349.565 2.011
002c 401.279 80.260 661.701 3.341 0.582 395.403 4.529
....
....
i.e. in the format "(4x,a4,7f9.3)". I would like it to go into a 2 dimensional
structure.
I cannot find a way of reading it as a entire array. At present, all I can
come up with is
nsets = 108 ; number of lines of data
f1 = "(4x,a4,7f9.3)"
a = string(4)
y = fltarr(7)
dpt = { fullrow, id: ' ', x: fltarr(7) }
fulldata = replicate( {fullrow}, nsets)
openr, 1, 'data'
for i=0,nsets-1 do begin
readf, 1, format = f1, a, y
fulldata(i).id = a
fulldata(i).x = y
endfor
close, 1
Is there any way of avoiding the temporary variables and the loop? I am
using PV-Wave CL, Ver 6.
--
Surendar Jeyadev jeyadev@wrc.xerox.com