Mit Julia 0.2 gibt es jetzt eine Möglichkeit, die Standardausgabe zu erfassen: Sie können redirect_stdout , um STDOUT
in eine Pipe zu konvertieren, aus der Sie lesen können.
Dies ist hauptsächlich nützlich, um die Ausgabe von externen C-Bibliotheken zu erfassen. Wie Stefan erwähnt, akzeptieren die meisten Julia-I / O-Funktionen ein io
-Argument, mit dem Sie an ein beliebiges Ziel, wie zum Beispiel einen Zeichenfolgenpuffer, drucken können.
Standard-Bibliotheksfunktionen sollten alle ein optionales EA-typisiertes erstes Argument akzeptieren, auf das gedruckt wird, wenn es angegeben wird, ansonsten aber standardmäßig auf STDOUT. In diesem Fall können Sie mit sprint(io->f(io,...))
erfassen, was in einer Zeichenfolge gedruckt wird. Wenn die Funktionen nicht zum Drucken auf ein bestimmtes IO-Objekt geschrieben wurden, gibt es keine Möglichkeit, die Ausgabe umzuleiten.
Tags und Links r julia-lang