Windows installer: Update texinfo.
[maxima.git] / doc / info / ja / numericalio.texi
blobd8cda4aa7c49c03a1040226820731722f024ceea
1 @menu
2 * Introduction to numericalio::
3 * Functions and Variables for plain-text input and output::
4 * Functions and Variables for binary input and output::
5 @end menu
7 @node Introduction to numericalio, Functions and Variables for plain-text input and output, numericalio, numericalio
8 @section Introduction to numericalio
10 @code{numericalio}は
11 ファイルやストリームを読み書きする関数のコレクションです。
12 プレインテキスト入出力のための関数は、
13 数(整数、浮動小数点、多倍長浮動小数点)やシンボル、文字列を読み書きできます。
14 バイナリ入出力のための関数は、
15 浮動小数点数だけを読み書きできます。
17 もし既に入力データを記憶すべきリスト、行列、配列オブジェクトがあるなら、
18 @code{numericalio}入力関数群はデータをそのオブジェクトに書き込むことができます。
19 そうでなければ、
20 @code{numericalio}はデータを記憶するオブジェクトの構造をある程度推測し、
21 そのオブジェクトを返します。
23 @opencatbox
24 @category{File input}
25 @category{File output}
26 @category{Share packages}
27 @category{Package numericalio}
28 @closecatbox
30 @subsection Plain-text input and output
32 プレインテキスト入出力では、
33 読み書きする項目それぞれがアトムであることが仮定されます:
34 整数、浮動小数点数、多倍長浮動小数点、文字列、シンボルであり、
35 有理数や複素数や他のどんなアトムでない式でもありません。
36 @code{numericalio}関数群は、アトムでない式に直面した時、
37 何か適当なことを試みるかもしれませんが、
38 結果はここで規定されず、変更の対象となります。
40 入力ファイルと出力ファイルどちらのアトムも、
41 Maximaバッチファイルや対話コンソールでのものと同じフォーマットを持ちます。
42 特に、文字列はダブルクォートで括られ、
43 バックスラッシュ@code{\}は次の文字の任意の特殊解釈を抑制し、
44 クエスチョンマーク@code{?}は
45 (Maximaシンボルではなく、)Lispシンボルを意味するシンボルの始まりとして認識されます。
46 (分割された行をつなぎ合わせる)いかなる継続文字も認識されません。
48 @subsection Separator flag values for input
50 プレインテキスト入出力のための関数は、オプションの引数@var{separator_flag}
51 を取ります。
52 それはどの文字がデータを分離するかを示します。
54 プレインテキスト入力では、
55 @var{separator_flag}の以下の値が認識されます:
56 コンマで区切られた値のための@code{comma}、
57 垂直バー文字@code{|}で区切られた値のための@code{pipe}、
58 セミコロン@code{;}で区切られた値のための@code{semicolon}、
59 空白かタブ文字で区切られた値のための@code{space}。
60 もしファイル名が@code{.csv}で終わり、
61 @var{separator_flag}が指定されていないなら、
62 @code{comma}が仮定されます。
63 もしファイル名が@code{.csv}以外の何かで終わり、
64 @code{separator_flag}が指定されていないなら、
65 @code{space}が仮定されます。
67 プレインテキスト入力では、
68 複数続く空白とタブ文字は1つの区切り文字として数えられます.
69 しかしながら、複数のコンマ、パイプまたはセミコロンは意味を持ちます。
70 連続するコンマ、パイプ、セミコロン文字は
71 (空白やタブが間に入ろうが入るまいが)
72 区切り文字の間に@code{false}を持つと見なされます。
73 例えば、@code{1234,,Foo}は
74 @code{1234,false,Foo}と同じと扱われます。
76 @subsection Separator flag values for output
78 プレインテキスト出力では、
79 @code{comma}, @code{pipe}, @code{semicolon}, そして@code{space}はもちろん、
80 タブ文字で区切られた値のための@code{tab}も、
81 @var{separator_flag}の値として認識されます。
83 プレインテキスト出力では、
84 @code{false}アトムは以下のように書かれます:
85 リスト@code{[1234, false, Foo]}は@code{1234,false,Foo}と書かれ、
86 出力を@code{1234,,Foo}につぶすことはありません。
88 @subsection Binary floating-point input and output
90 @code{numericalio}関数群は8バイトIEEE754浮動小数点数を読み書きすることができます。
91 これらの数は、
92 @code{assume_external_byte_order}で設定されたグローバルフラグに従って、
93 最下位バイトから順でも最上位バイトから順でも記憶することができます。
95 もし指定されないなら、
96 @code{numericalio}は外部バイト順は最上位バイトからと仮定します。
98 他の種類の数は8バイト浮動小数点に強制変換されます;
99 @code{numericalio}はアトムでないバイナリデータを読み書きできません。
101 いくつかのLisp実装は
102 IEEE 754の特殊値(正負の無限大、非数値、指数表現でない数)を認識しません。
103 @code{numericalio}でそんな値を読み込むことの効果は未定義です。
105 @code{numericalio}は
106 バイトストリームを読んだり書いたりするためのストリームを開く
107 関数を含みます。
110 @node Functions and Variables for plain-text input and output, Functions and Variables for binary input and output, Introduction to numericalio, numericalio
111 @section Functions and Variables for plain-text input and output
113 @deffn {関数} read_matrix (@var{S})
114 @deffnx {関数} read_matrix (@var{S}, @var{M})
115 @deffnx {関数} read_matrix (@var{S}, @var{separator_flag})
116 @deffnx {関数} read_matrix (@var{S}, @var{M}, @var{separator_flag})
118 @code{read_matrix(@var{S})}は、
119 ソース@var{S}を読み込み、行列として内容全体を返します。
120 行列のサイズは入力データから推論されます;
121 ファイルの行それぞれは行列の1行になります。
122 もし複数の行が異なる長さを持つなら、
123 @code{read_matrix}はエラーを出力します。
125 @code{read_matrix(@var{S}, @var{M})}は、
126 @var{M}が一杯になるか、ソースが尽きるまで、
127 ソース@var{S}を行列@var{M}に読み込みます。
128 入力データは行優先順に行列に読み込まれます;
129 入力は@var{M}と同じ行数と列数を持つ必要はありません。
131 ソース@var{S}はファイル名かストリームかもしれません。
133 @var{separator_flag}の認識される値は
134 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
135 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
137 @opencatbox
138 @category{Package numericalio}
139 @category{File input}
140 @closecatbox
142 @end deffn
144 @deffn {関数} read_array (@var{S}, @var{A})
145 @deffnx {関数} read_array (@var{S}, @var{A}, @var{separator_flag})
147 @var{A}が一杯になるか、ソースが尽きるまで、
148 ソース@var{S}を配列@var{A}に読み込みます。
149 入力データは列優先順に配列に読み込まれます;
150 入力は@var{A}の次元に一致する必要はありません。
152 ソース@var{S}はファイル名かストリームかもしれません。
154 @var{separator_flag}の認識される値は
155 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
156 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
158 @opencatbox
159 @category{Package numericalio}
160 @category{File input}
161 @closecatbox
163 @end deffn
165 @deffn {関数} read_hashed_array (@var{S}, @var{A})
166 @deffnx {関数} read_hashed_array (@var{S}, @var{A}, @var{separator_flag})
168 ソース@var{S}が読み込まれ、ハッシュ配列として内容全体が返されます。
169 ソース@var{S}はファイル名かストリームかもしれません。
171 @code{read_hashed_array}は、
172 それぞれの行の最初の項目をハッシュキーとして扱い、
173 行の残りを(リストとして)キーと結合します。
174 例えば、
175 行@code{567 12 17 32 55}は
176 @code{A[567]: [12, 17, 32, 55]$}と同値です。
177 行数は要素数と同じである必要はありません。
179 @var{separator_flag}の認識される値は
180 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
181 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
183 @opencatbox
184 @category{Package numericalio}
185 @category{File input}
186 @closecatbox
188 @end deffn
190 @deffn {関数} read_nested_list (@var{S})
191 @deffnx {関数} read_nested_list (@var{S}, @var{separator_flag})
193 ソース@var{S}を読み込み、
194 入れ子のリストとして内容全体を返します。
195 ソース@var{S}はファイル名かストリームかもしれません。
197 @code{read_nested_list}は
198 入力のそれぞれの行について部分リストを持つリストを返します。
199 行数は要素数と同じである必要はありません。
200 空の行は無視され@i{ません}: 空の行は空の部分リストをもたらします。
202 @var{separator_flag}の認識される値は
203 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
204 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
206 @opencatbox
207 @category{Package numericalio}
208 @category{File input}
209 @closecatbox
211 @end deffn
213 @deffn {関数} read_list (@var{S})
214 @deffnx {関数} read_list (@var{S}, @var{L})
215 @deffnx {関数} read_list (@var{S}, @var{separator_flag})
216 @deffnx {関数} read_list (@var{S}, @var{L}, @var{separator_flag})
218 @code{read_list(@var{S})}は、
219 ソース@var{S}を読み込み、
220 フラットなリストとして内容全体を返します。
222 @code{read_list(@var{S}, @var{L})}は、
223 @var{L}が一杯になるかソースが尽きるまで、
224 ソース@var{S}を
225 リスト@var{L}に読み込みます。
227 ソース@var{S}はファイル名かストリームかもしれません。
229 @var{separator_flag}の認識される値は
230 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
231 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
233 @opencatbox
234 @category{Package numericalio}
235 @category{File input}
236 @closecatbox
238 @end deffn
240 @deffn {関数} write_data (@var{X}, @var{D})
241 @deffnx {関数} write_data (@var{X}, @var{D}, @var{separator_flag})
243 オブジェクト@var{X}をデスティネーション@var{D}に書き出します。
245 @code{write_data}は行列を
246 行につき一行で行優先順に書き出します。
248 @code{write_data}は
249 @code{array}や@code{make_array}で生成された配列を
250 行優先順でスラブ毎に改行して書き出します。
251 高次元スラブは更に改行で分割されます。
253 @code{write_data}はハッシュ配列を
254 1行に、キーそれぞれに結合したリストが続くように書き出します。
256 @code{write_data}は入れ子のリストを
257 それぞれの部分リストを1行に書き出します。
259 @code{write_data}はフラットなリストすべてを1行に書き出します。
261 デスティネーション@var{D}はファイル名かストリームかもしれません。
262 デスティネーションがファイル名の時、
263 グローバル変数@code{file_output_append}は
264 出力ファイルに追加されるか上書きされるか決定します。
265 デスティネーションがストリームの時、
266 @code{write_data}は
267 データすべてが書かれた後、特殊なアクションを取ります;
268 特にストリームは開いたままとなります。
270 @var{separator_flag}の認識される値は
271 @code{comma}, @code{pipe}, @code{semicolon}, @code{space}です。
272 もし@var{separator_flag}が指定されないなら、ファイルは空白で区切られていると仮定されます。
274 @opencatbox
275 @category{Package numericalio}
276 @category{File output}
277 @closecatbox
279 @end deffn
281 @node Functions and Variables for binary input and output, , Functions and Variables for plain-text input and output, numericalio
282 @section Functions and Variables for binary input and output
284 @deffn {関数} assume_external_byte_order (@var{byte_order_flag})
285 @code{numericalio}に
286 バイナリデータを読み書きするためのバイトオーダーを知らせます。
287 @var{byte_order_flag}の2つの値が認識されます:
288 リトルエンディアンバイトオーダーとも呼ばれる最下位バイト優先を示す@code{lsb};
290 ビッグエンディアンバイトオーダーとも呼ばれる最上位バイト優先を示す@code{msb}。
292 もし指定されないなら、
293 @code{numericalio}は外部のバイトオーダーは最上位バイト優先を仮定します。
295 @opencatbox
296 @category{Package numericalio}
297 @closecatbox
298 @end deffn
300 @deffn {関数} openr_binary (@var{file_name})
301 @var{file_name}という名前のファイルを読むための
302 8ビット符号なしバイトの入力ストリームを返します。
304 @opencatbox
305 @category{Package numericalio}
306 @category{File input}
307 @closecatbox
308 @end deffn
310 @deffn {関数} openw_binary (@var{file_name})
311 @var{file_name}という名前のファイルに書き込むための
312 8ビット符号なしバイトの出力ストリームを返します。
314 @opencatbox
315 @category{Package numericalio}
316 @category{File output}
317 @closecatbox
318 @end deffn
320 @deffn {関数} opena_binary (@var{file_name})
321 @var{file_name}という名前のファイルに追加するための
322 8ビット符号なしバイトの出力ストリームを返します。
324 @opencatbox
325 @category{Package numericalio}
326 @category{File output}
327 @closecatbox
328 @end deffn
330 @deffn {関数} read_binary_matrix (@var{S}, @var{M})
331 @var{M}が一杯になるかソースが尽きるまで、
332 ソース@var{S}から行列@var{M}にバイナリの8バイト浮動小数点数を読み込みます。
333 @var{M}の要素は行優先順で読み込まれます。
335 ソース@var{S}はファイル名かストリームかもしれません。
337 ソースの要素のバイトオーダーは
338 @code{assume_external_byte_order}で指定されます。
340 @opencatbox
341 @category{Package numericalio}
342 @category{File input}
343 @closecatbox
344 @end deffn
346 @deffn {関数} read_binary_array (@var{S}, @var{A})
347 @var{A}が一杯になるかソースが尽きるまで、
348 ソース@var{S}から配列@var{A}にバイナリの8バイト浮動小数点数を読み込みます。
349 @var{M}の要素は行優先順で読み込まれます。
351 ソース@var{S}はファイル名かストリームかもしれません。
353 ソースの要素のバイトオーダーは
354 @code{assume_external_byte_order}で指定されます。
356 @opencatbox
357 @category{Package numericalio}
358 @category{File input}
359 @closecatbox
360 @end deffn
362 @deffn {関数} read_binary_list (@var{S})
363 @deffnx {関数} read_binary_list (@var{S}, @var{L})
364 @code{read_binary_list(@var{S})}は
365 バイナリ8バイト浮動小数点数の数列として
366 ソース@var{S}の内容全体を読み込み、それをリストとして返します。
367 ソース@var{S}はファイル名かストリームかもしれません。
369 @code{read_binary_list(@var{S}, @var{L})}は
370 リスト@var{L}が一杯になるかソースが尽きるまで、
371 ソース@var{S}から
372 バイナリ8バイト浮動小数点数を読み込みます。
374 ソースの要素のバイトオーダーは
375 @code{assume_external_byte_order}で指定されます。
377 @opencatbox
378 @category{Package numericalio}
379 @category{File input}
380 @closecatbox
381 @end deffn
383 @deffn {関数} write_binary_data (@var{X}, @var{D})
385 Writes the object 
386 バイナリ8バイトIEEE 754浮動小数点数で構成される
387 オブジェクト@var{X}を
388 ディスティネーション@var{D}に書き込みます。
389 他の種類の数は8バイト浮動小数点に強制変換されます。
390 @code{write_binary_data}は非数データを書くことはできません。
392 The object 
393 オブジェクト@var{X}はリストか、入れ子のリスト、行列、
394 もしくは、@code{array}か@code{make_array}で生成された配列であり得ます;
395 @var{X}は未宣言配列や他のいかなる種類のオブジェクトもありえません。
396 @code{write_binary_data}は
397 入れ子のリスト、行列、配列を行優先順に書き込みます。
399 デスティネーション@var{D}はファイル名かストリームかもしれません。
400 デスティネーションがファイル名の時、
401 グローバル変数@code{file_output_append}が
402 出力ファイルに追加されるか上書きされるか決めます。
403 デスティネーションがストリームの時、
404 データすべてが書かれた後@code{write_binary_data}は特別な動作は何もしません;
405 特に、ストリームは開かれたままです。
407 デスティネーションの要素のバイトオーダーは
408 @code{assume_external_byte_order}で指定されます。
410 @opencatbox
411 @category{Package numericalio}
412 @category{File output}
413 @closecatbox
414 @end deffn