No need for macros!
Its an interesting feature request, maybe open a Github issue so people can
discuss it.
I think your solution is not terrible, you could generalize it to
readcell(f, nlines) = readdlm(IOBuffer(string([readline(f) for i in
1:nlines])))
Then do something like
f = open("mydata","r")
cells = {}
while !eof(f)
push!(cells, readcell(f, 3))
end
close(f)
On Tuesday, August 12, 2014 10:40:24 AM UTC-4, Jarvist Moore Frost wrote:
>
> I’m writing a Julia parser to read in a large output from a Fortran
> program which is essentially a load of concatenated matrices of differing
> dimensions. It would be really useful to be able to do something along the
> lines of readdlm(file,nlines=3) to pull in i.e. the 3x3 matrix you know
> that follows.
>
> Currently I’m resorting to things like:
>
> celltext=string(readline(f),readline(f),readline(f))
> cell=readdlm(IOBuffer(celltext))
>
> And this really doesn’t feel like a very elegant method (not helped as
> neither readline nor readlines appear to accept ‘number of lines’ as an
> argument).
>
> Am I missing the Julia way to do things here? Or should I start writing
> @macros to expand to this level of nitty gritty?
>
>