[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Q]: reading hexadecimal numbers from text files



Erin McKay (intrigue@ozemail.com.au) writes:
> 
> I'm working with some DICOM files that are not supported by IDL's built-in
> access functions. I've written a DICOM parser and would like to make use
> of an external DICOM dictionary. But I can't figure out how to interpret
> ASCII strings as hexadecimal coded integers (its always the little
> things...). For example, I need to read lines like:
> 
> 7FE0, 0010, 'CS', 'Pixel Data'
> 
> and interpret the first 3 fields as unsigned short integers. I also need
> to print these values back out as they are displayed here.

I have no idea how to read 'CS' into a short integer, but
hexadecimal values are quite straightforward. You use
the "Z" format to transfer the data back and forth:

   IDL> variable = 0U  ; Create an unsigned short integer.
   IDL> Read, variable, Format='(Z4)'
     : 7FE0
   IDL> Help, variable
       VARIABLE     UINT      =    32736

You do the same thing to write it out:

   IDL> Print, variable, Format='(Z4)'
       7FE0

Cheers,

David

-- 
David Fanning, Ph.D.
Fanning Software Consulting
Phone: 970-221-0438 E-Mail: davidf@dfanning.com
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Toll-Free IDL Book Orders: 1-888-461-0155