9. ファイル型 (File Types)
9.1. ファイル構造
標準 Pascal では program ヘッダのパラメータと外部ファイルとの関連付けは処理系定義となっています。つまり、規格では定められていません。
Pascal-P5 では、2 つの特殊なテキストファイルが扱えます。
外部ファイル | 説明 |
---|---|
prd | 読み込み専用の外部ファイル |
prr | 書き込み専用の外部ファイル |
詳しくは次の記事を参考にしてください。
UCSD Pascal などでは Reset() や Rewrite() の第 2 引数にファイル名を渡せるようにして問題を解決しています。
RANDOMACCESS.pas
PROGRAM RANDOMACCESS;
VAR
DISK: FILE OF
RECORD
NAME: STRING[20];
DAY, MONTH, YEAR: INTEGER
END;
BEGIN
RESET(DISK, 'RECORDS.DATA');
WHILE NOT EOF(INPUT) DO
BEGIN
...
拡張 Pascal では Bind() / Binding() / Unbind() とレコード型 BindingType を使って問題を解決しています。
procedure bindfile(var f : text);
var
b : BindingType;
begin
unbind(f);
b := binding(f);
repeat
writeln('Enter file name:');
readln(b.name);
bind(f, b);
b := binding(f);
if not b.bound then
writeln('File not bound--try again.');
until b.bound;
end;
See also:
9.2. テキストファイル
Eoln()
が True の状態で Read()
によって 1 文字読み込んだ時、標準 Pascal は空白を返します。
(9.3.) 型なしファイル
Delphi には型なしファイル型というものがあります。いわゆるバイナリファイルを扱うファイル型です。
この拡張は UCSD Pascal 由来のようです。BlockRead() や BlockWrite() も用意されていました。
See also:
索引
[ ← 8. 集合型〔裏〕 ] [ ↑ 目次へ ] [ → 10. ポインタ型〔裏〕 ]