MathGroup Archive 1997

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: WriteList function?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg9346] Re: [mg9320] WriteList function?
  • From: seanross at worldnet.att.net
  • Date: Sat, 1 Nov 1997 03:33:32 -0500
  • Sender: owner-wri-mathgroup at wolfram.com

Tom Thomas wrote:
> 
> Hi, I am a new Mathematica user.
> 
> I have had success reading files of space-separated numbers using
> ReadList, but now need to output my results in the same fashion. i.e.
> one row of the matrix should appear on one text line,
>      no commas, nor curly braces are desired in the output.
> 
> I have searched the manual for a corresponding WriteList function
> without success.
> 
> Any suggestions?   I may have to resort to awk/sed/perl to  postprocess
> the file, but I would've thought Mathematica would've provided the
> facilities to write data in a general format.
> 
> Thank you kindly,   --tom thomas
> -------------------------------------------------------------------
> example:
> In[1]:= !! /tmp/mymat
> 1 2 3
> 4 5 6
> 7 8 9
> 
> In[1]:= mydata =  ReadList["/tmp/mymat", Number, RecordLists->True]
> 
> Out[1]= {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
> 
> In[2]:= stmp = OpenWrite["/tmp/myoutput"]
> 
> Out[2]= OutputStream[/tmp/myoutput, 4]
> 
> In[3]:= Write[stmp, mydata]
> 
> %cat /tmp/myoutput
> {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
> 
> I need to see instead:
> 1 2 3
> 4 5 6
> 7 8 9


Don't despair!  There is no built in command to do this, but you can use
the built-in string commands and make up a string that suits you then
write that to a file.  The way I typically do it is:

StringReplace[
	ToString[myarray],
	{","->" ",
	 "{{"->" ",
	 "{"->" ",
	 "}}"->"\n",
 	 "}"->"\n"}]

This makes the array into a string, then replaces all the commas and
left curly braces with spaces and the right curly braces with return
characters.  You can then Write the result to a file.


  • Prev by Date: Re: Re: trig expansion
  • Next by Date: Assumptions
  • Previous by thread: Re: WriteList function?
  • Next by thread: Re: WriteList function?