Re: Help on text data [message #72293 is a reply to message #72288] |
Wed, 25 August 2010 04:38   |
Gray
Messages: 253 Registered: February 2010
|
Senior Member |
|
|
On Aug 25, 4:45 am, Dave Poreh <d.po...@gmail.com> wrote:
> On Aug 24, 10:06 am, Gray <grayliketheco...@gmail.com> wrote:
>
>
>
>
>
>> On Aug 24, 1:03 pm, Gray <grayliketheco...@gmail.com> wrote:
>
>>> On Aug 24, 7:51 am, Dave Poreh <d.po...@gmail.com> wrote:
>
>>>> Folks
>>>> I am reading some text data (I don’t know how many) like this:
>>>> pathName="d:\p\"
>>>> List = findfile(pathName+"*.dat")
>>>> nosFiles=N_ELEMENTS(List)
>>>> data = ptrarr(nosFiles)
>>>> for i = 0, nosFiles - 1 do begin
>>>> x=read_ascii(list[i])
>>>> data[i] = ptr_new(x)
>>>> endfor
>>>> I want to put this data in a string like this:
>>>> names = ['data[0]', ' data[1]', ' data[2]',…] to proceed David’s
>>>> name_selctor.
>>>> I do not know how to do that.
>>>> Any help highly would be appreciated
>>>> Cheers,
>>>> Dave
>
>>> I'm not sure exactly what you're asking... do you want a "names" array
>>> where names[0] is the string 'data[0]'? Or do you want a names array
>>> where names[0] = data[0]?
>
>> if the former:
>
>> names = 'data['+strtrim(indgen(n_elements(data)),2)+']'
>
> thanks Gary. this is exactly what i want and works perfect. What about
> the posterior case: names[0] = data[0]?
>
> Cheers,
> Dave
Well... you're using pointers. If you want the actual "data" in
data[0] to be stored as names[0] (presumably without being a pointer),
then you would need to put data[0] as a single string variable. If it
is already (I don't know w/o looking at your data), then you're fine;
otherwise, I guess you could do something like names[0] =
strjoin(*data[0],'||') with the double pipe to indicate a line break
or somesuch.
|
|
|