|
Read
Read[stream]は,入力ストリームから式を1つ読み込み,この式を返す.
Read[stream, type]は,指定されたタイプのオブジェクトを1つ読み込む .
Read[stream,  , , ... ]は,指定されたタイプの一連のオブジェクトを読み込む.
読込み可能なタイプ:

タイプRealのオブジェクトは,Mathematica形式をはじめ,CやFortran等の言語で使われる科学的数記法形式で与えられる. 数 を表すには,2*^5をはじめ,2.e5あるいは2E5等の形式が使われる. Real型のオブジェクトは,常に近似数として返される. Number型は,具体的な小数を含まない限り,整数として返される.
以下のオプションを与えることができる.

String型のオブジェクトは,改行("\n"文字)で終ることが要求される.
Readが探すタイプを任意にネストしたリストで指定することができる.継続したそれぞれのオブジェクトの読込みはリスト構造の次の位置におかれる.深さ優先のリスト構造の旋回が使用される.
例:Read[stream, Number, Number ]は,入力ストリームから数のペアを読み込み,結果として2要素のリストを与える.
Read[stream,  Number, Number , Number, Number ]は,各行,列を通して 行列を読み込む.
Readを使って,リストに限らず任意の式構造に挿入するオブジェクトを得ることができる.例: Read[stream, Hold[Expression]]は,式を得てHoldの内側におく.
Readの第1引数は,InputStream["name", n]や,開いている入力ストリームが指定された名称で一意的に定まる場合,単純に"name"が使える.
OpenReadを使ってInputStreamオブジェクトを得るために,ファイルやパイプを開くことはできない.
任意のストリームには,これに維持される 「現行のポイント」 が常に存在する.オブジェクトをストリームから読み込む際に,現行のポイントは読み込んだ入力の直後に残される.Readへの継続した呼出しは,ファイル等のストリームの継続したオブジェクトの読込みに使われる.
ファイルの終りに到達した後,読込みを試行するとReadは,EndOfFileをそれぞれのオブジェクトに返す.
要求されたタイプのオブジェクトが読み込めない場合,Readは$Failedを返す.
読込みを試行しているMathematicaの式に文法エラーが存在する場合,Readは,現行のポイントをそのエラーの位置に残して,$Failedを返す.
参照セクション:2.12.8.
次も参照:Input,Get,Skip,Find,StringToStream, LinkRead,Import.
バージョン1の新関数.バージョン3で大幅改訂
|