[Lazarus] reading FORTRAN-style input in Lazarus
David M. Lawrence
dave at fuzzo.com
Fri Aug 5 06:49:50 CEST 2011
The values aren't always separated by spaces. These are huge files with
sometimes tens of thousands of lines of data. The only way I can
effectively search and extract relevant data form them is to find a way
to specify that characters 1 through 3 are a country code, characters 13
through 37 are site names, etc.
Dave
On 8/5/2011 12:41 AM, Alexander Klenin wrote:
> On Fri, Aug 5, 2011 at 15:06, David M. Lawrence<dave at fuzzo.com> wrote:
>> I've held on to FORTRAN because of its ability to explicitly define input
>> (and output) formats -- this is a must for extracting data from a number of
>> publicly available datasets.
>>
>> I'm now trying to convert one of my most useful programs to PASCAL, but I am
>> hung up on how to read multiple variables from a single line.
>>
>> For example, here's a FORTRAN format I need to emulate:
>>
>> FORMAT(I3,I7,2X,A25,1X,F6.2,1X,F7.2,3(1X,I4),1X,F4.1,1X,I1)
>>
>> On a single line, I begin with two integer variables, skip two spaces, one
>> string variable, one space followed by a real variable, skip a space, etc.
>>
>> I know of examples that involve treating each line as a character array, but
>> I cannot find them now. I also know how to specify write formats, but have
>> seen no examples of applying that to reading lines.
>>
> If values are separated by spaces, you can just use Readln.
> If you really need to check exact format
> (i.e. error out if there are, for example, three spaces instead of two),
> you can re-format the values read and compare result with the original string.
>
--
------------------------------------------------------
David M. Lawrence | Home: (804) 559-9786
7471 Brook Way Court | Fax: (804) 559-9787
Mechanicsville, VA 23111 | Email: dave at fuzzo.com
USA | http: http://fuzzo.com
------------------------------------------------------
"All drains lead to the ocean." -- Gill, Finding Nemo
"We have met the enemy and he is us." -- Pogo
"No trespassing
4/17 of a haiku" -- Richard Brautigan
More information about the Lazarus
mailing list