[ncl-talk] Remove white-spaces from write_table output
Rabah Hachelaf
hachelaf at sca.uqam.ca
Thu Aug 10 12:02:10 MDT 2017
Hi Mary and Karin,
Adding white-spaces by default is a limitation if we need to write some
data using a FORTRAN format.
We could bypass this "issue" by removing one character starting from the
2nd variable but we would have liked to keep the same format between
FORTRAN and NCL
Regards,
Rabah
2017-08-10 13:15 GMT-04:00 Mary Haley <haley at ucar.edu>:
> Hi Rabah,
>
> I see Karin already responded, and had the same response I was just about
> to send!
>
> I'll go ahead and include my response here. I've updated the documentation
> to indicate this behavior, and also created a ticket just in case.
>
> Unfortunately, I think this is a "feature" of write_table. Even if there's
> a case for declaring this a bug, we probably couldn't change the behavior
> because we'd likely break a bunch of existing scripts that depend on the
> space being there.
>
> I created a ticket on this (NCL-2646), in case it's an issue for other
> users.
>
> Meanwhile, as Karin pointed out, I think the only way around this is to
> concatenate the strings yourself:
>
> int1 = 2
> int2 = "99999"
> int3 = "99999"
> int4 = "99999"
> int5 = "99999"
> int6 = "99999"
> int7 = "99999"
> int_cat = int2+int3+int4+int5+int6+int7
> sounding_check = [/int1,int_cat/]
> write_table(outfile,"w",sounding_check,"%2i%s")
>
> In general, I would caution against writing numbers to a file without any
> spaces, because this makes it potentially very difficult for somebody else
> looking at the file to know how to read it. However, I do understand that
> some of these files have historically been written this way for other
> purposes
>
> --Mary
>
>
>
> On Wed, Aug 9, 2017 at 3:13 PM, Rabah Hachelaf <hachelaf at sca.uqam.ca>
> wrote:
>
>>
>> Hello,
>> I am wounding why there is a systematic white-spaces between values
>> although they are removed from the format specifier.
>> How can i remove white spaces from in this case.
>>
>> Thank you
>>
>>
>> begin
>> outfile = "test.txt"
>> sounding_check = [/2,"99999","99999","99999","99999","99999","99999"/]
>> write_table(outfile,"a",sounding_check,"%2i%s%s%s%s%s%s")
>>
>> end
>>
>>
>> output :
>> 2 99999 99999 99999 99999 99999 99999
>> --
>> ------------------------------
>> Best regards,
>> Rabah Hachelaf
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>
--
------------------------------
Cordialement,
Best regards,
Rabah Hachelaf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20170810/85550b48/attachment.html
More information about the ncl-talk
mailing list