comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Converting INT to STRING out of space...
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: Converting INT to STRING out of space... [message #43157] Mon, 21 March 2005 09:21
R.G. Stockwell is currently offline  R.G. Stockwell
Messages: 363
Registered: July 1999
Senior Member
"Nuno Oliveira" <nmoliveira@fc.ul.pt> wrote in message
news:d1mqh8$111t$1@pegasus.fccn.pt...
> If I want to save a file within a cicle and I want the name of the file to
> have the number related to the cicle, I have a problem that maybe someone
> in here have faced.
>
> Apparently there is no way that I can eliminate a space in a string made
> of an integer variable. Try:
>
> number = 3
> aux = STRCOMPRESS(STRING(number))
> file = 'saving'+aux+'.dat'
>
> And, this way the variable file will be 'saving 3.dat' with a SPACE inside
> the string. Any tips of how I can avoid this space?
>
> Greetings,
>
> Nuno
>

The answers posted solve your problem for you.
I would just add one tidbit, you can format the numbers
to have leading 0's, so that they line up nicely when
you get a file listing in alphabetical order.

Use format of I3.3 for instance:
string(number,format='("saving",I3.3,".dat")')



Cheers,

bob
Re: Converting INT to STRING out of space... [message #43163 is a reply to message #43157] Mon, 21 March 2005 07:56 Go to previous message
Craig Markwardt is currently offline  Craig Markwardt
Messages: 1869
Registered: November 1996
Senior Member
Nuno Oliveira <nmoliveira@fc.ul.pt> writes:
> If I want to save a file within a cicle and I want the name of
> the file to have the number related to the cicle, I have a problem
> that maybe someone in here have faced.
>
> Apparently there is no way that I can eliminate a space in a
> string made of an integer variable. Try:
>
> number = 3
> aux = STRCOMPRESS(STRING(number))
> file = 'saving'+aux+'.dat'
>
> And, this way the variable file will be 'saving 3.dat' with a SPACE
> inside the string. Any tips of how I can avoid this space?

Yes, how about,
aux = strtrim(number,2)
or, to solve your whole problem at once,
file = string(number,format='("saving",I0,".dat")')

I use both.

Craig

--
------------------------------------------------------------ --------------
Craig B. Markwardt, Ph.D. EMAIL: craigmnet@REMOVEcow.physics.wisc.edu
Astrophysics, IDL, Finance, Derivatives | Remove "net" for better response
------------------------------------------------------------ --------------
Re: Converting INT to STRING out of space... [message #43164 is a reply to message #43163] Mon, 21 March 2005 08:03 Go to previous message
Ben Panter is currently offline  Ben Panter
Messages: 102
Registered: July 2003
Senior Member
Ben Panter wrote:
> Nuno Oliveira wrote:
>
>> Apparently there is no way that I can eliminate a space in a
>> string made of an integer variable. Try:
>>
>> number = 3
>> aux = STRCOMPRESS(STRING(number))
>> file = 'saving'+aux+'.dat'

> without /remove_all, strcompress compresses all whitespace to a single
> whitespace, it doesn't get rid of it.

hmmm.

Alternativly if I were to engage my brain before posting, you could just
put a /remove_all in your strcompress call, which would do the business.


Ben


--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Ben Panter, Garching, Germany
email via www.benpanter.co.uk
Re: Converting INT to STRING out of space... [message #43165 is a reply to message #43163] Mon, 21 March 2005 08:00 Go to previous message
tam is currently offline  tam
Messages: 48
Registered: February 2000
Member
Nuno Oliveira wrote:

> If I want to save a file within a cicle and I want the name of the
> file to have the number related to the cicle, I have a problem that
> maybe someone in here have faced.
>
> Apparently there is no way that I can eliminate a space in a string
> made of an integer variable. Try:
>
> number = 3
> aux = STRCOMPRESS(STRING(number))
> file = 'saving'+aux+'.dat'
>
> And, this way the variable file will be 'saving 3.dat' with a SPACE
> inside the string. Any tips of how I can avoid this space?
>
> Greetings,
>
> Nuno
>
Try the /remove_all option in strcompress. Should do the trick.

Regards,
Tom McGlynn
Re: Converting INT to STRING out of space... [message #43166 is a reply to message #43163] Mon, 21 March 2005 08:00 Go to previous message
Ben Panter is currently offline  Ben Panter
Messages: 102
Registered: July 2003
Senior Member
Nuno Oliveira wrote:

> Apparently there is no way that I can eliminate a space in a string
> made of an integer variable. Try:
>
> number = 3
> aux = STRCOMPRESS(STRING(number))
> file = 'saving'+aux+'.dat'
>
> And, this way the variable file will be 'saving 3.dat' with a SPACE
> inside the string. Any tips of how I can avoid this space?

I have a solution, but it isn't general. If you use:

number = 3
aux = strtrim(string(number),2)
file = 'saving' + aux + '.dat'

It should solve your problem - by removing the space before it appears
in the filename!

The more general solution requires you to call the strcompress a bit
later, and with the /remove_all keyword.

number = 3
aux = string(number)
file = strcompress('saving' + aux + '.dat', /remove_all)

without /remove_all, strcompress compresses all whitespace to a single
whitespace, it doesn't get rid of it.

HTH,

Ben

--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Ben Panter, Garching, Germany
email via www.benpanter.co.uk
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: C Alignment/IDL structures
Next Topic: IRIG Time Stamp to Julday

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 15:28:26 PDT 2025

Total time taken to generate the page: 0.00770 seconds