[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11 入出力


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.1 end, quit

end, quit

:: 現在読み込み中のファイルを閉じる. トップレベルにおいてはセッションを終了することになる.

[6] quit;
%
参照

load.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.2 load

load("filename")

:: filename を読み込む.

return

(1|0)

filename

ファイル名 (パス名)

参照

end, quit, which, get_rootdir.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.3 which

which("filename")

:: 引数 filename に対し, load() が読み込むパス名を返す.

return

パス名

filename

ファイル名 (パス名) または 0

[0] which("gr");               
./gb/gr
[1] which("/usr/local/lib/gr");
0
[2] which("/usr/local/lib/asir/gr");
/usr/local/lib/asir/gr
参照

load.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.4 output

output(["filename"])

:: 以降の出力先を filenameまたは標準出力に切替える.

return

1

filename

ファイル名

[83] output("afo");
fctr(x^2-y^2);
print("afo");
output();
1
[87] quit;
% cat afo
1
[84] [[1,1],[x+y,1],[x-y,1]]
[85] afo
0
[86]
参照

ctrl, bsave, bload.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.5 bsave, bload

bsave(obj,"filename")

:: filenameobj をバイナリ形式で書き込む.

bload("filename")

:: filename から数式をバイナリ形式で読み込む.

return

bsave() : 1, bload() : 読み込んだ数式

obj

函数形式, 未定係数を含まない任意の数式

filename

ファイル名

[0] A=(x+y+z+u+v+w)^20$
[1] bsave(A,"afo");
1
[2] B = bload("afo")$
[3] A == B;
1
[4] X=(x+y)^2; 
x^2+2*y*x+y^2
[5] bsave(X,"afo")$
[6] quit;
% asir
[0] ord([y,x])$    
[1] bload("afo");
y^2+2*x*y+x^2
参照

output.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.6 bload27

bload27("filename")

:: 旧版で作られた bsave file の読み込み

return

読み込んだ数式

filename

ファイル名

参照

bsave, bload.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.7 print

print(obj [,nl])

:: obj を表示する.

return

0

obj

任意

nl

フラグ (任意)

[8] def cat(L) { while ( L != [] ) { print(car(L),0); L = cdr(L);}
print(""); }
[9] cat([xyz,123,"gahaha"])$
xyz123gahaha

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.8 access

access(file)

:: file の存在をテストする.

return

(1|0)

file

ファイル名


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.9 remove_file

remove_file(file)

:: file を消去する.

return

1

file

ファイル名


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.11.10 open_file, close_file, get_line, get_byte, put_byte, purge_stdin

open_file("filename"[,"mode"])

:: filename をオープンする.

close_file(num)

:: 識別子 num のファイルをクローズする.

get_line([num])

:: 識別子 num のファイルから 1 行読む.

get_byte(num)

:: 識別子 num のファイルから 1 バイト読む.

put_byte(num,c)

:: 識別子 num のファイルに 1 バイト c を書く.

purge_stdin()

:: 標準入力のバッファをクリアする.

return

open_file() : 整数 (識別子); close_file() : 1; get_line() : 文字列; get_byte(), put_byte() : 整数

filename

ファイル名 (パス名)

mode

文字列

num

非負整数 (ファイル識別子)

[185] Id = open_file("test");
0
[186] get_line(Id);
12345

[187] get_line(Id);
67890

[188] get_line(Id);
0
[189] type(@@);
0
[190] close_file(Id);
1
[191] open_file("test");
1
[192] get_line(1);   
12345

[193] get_byte(1);
54                   /* the ASCII code of '6' */
[194] get_line(1);
7890                 /* the rest of the last line */
[195] def test() { return get_line(); }
[196] def test1() { purge_stdin(); return get_line(); }
[197] test();
                     /* a remaining newline character has been read */
                     /* returns immediately */
[198] test1();
123;                 /* input from a keyboard */
123;                 /* returned value */

[199] 

参照

eval_str, str_len, str_chr, sub_str.


[ << ] [ < ] [?] [ > ] [ >> ]

?????10? 24, 2017?texi2html 5.0????????????