# HG changeset patch # User Jaroslav Hajek # Date 1283323797 -7200 # Node ID 1d761a30c3fb5338c6e739b13549c959c5f4bd74 # Parent 3cb4889dd6f7a7fd4eed61ebe3050a8d83f82801 support file IDs in dlmwrite diff -r 3cb4889dd6f7 -r 1d761a30c3fb scripts/ChangeLog --- a/scripts/ChangeLog Wed Sep 01 08:43:23 2010 +0200 +++ b/scripts/ChangeLog Wed Sep 01 08:49:57 2010 +0200 @@ -1,3 +1,7 @@ +2010-09-01 Jaroslav Hajek + + * io/dlmwrite.m: Support file IDs. + 2010-07-07 David Bateman * miscellaneous/what.m: Off by one error. diff -r 3cb4889dd6f7 -r 1d761a30c3fb scripts/io/dlmwrite.m --- a/scripts/io/dlmwrite.m Wed Sep 01 08:43:23 2010 +0200 +++ b/scripts/io/dlmwrite.m Wed Sep 01 08:49:57 2010 +0200 @@ -23,6 +23,8 @@ ## @deftypefnx {Function File} {} dlmwrite (@var{file}, @var{a}, "-append", @dots{}) ## Write the matrix @var{a} to the named file using delimiters. ## +## @var{file} should be a file name or writable file ID given by @code{fopen}. +## ## The parameter @var{delim} specifies the delimiter to use to separate ## values on a row. ## @@ -153,7 +155,15 @@ endif endwhile - [fid, msg] = fopen (file, opentype); + if (ischar (file)) + [fid, msg] = fopen (file, opentype); + elseif (isscalar (file) && isnumeric (file)) + fid = file; + msg = "invalid file number"; + else + error ("dlmwrite: file must be a string file ID"); + endif + if (fid < 0) error (msg); else