问题:我最近购买了1989年的IBM PS2,并且我正尝试通过软盘将大型文件从我的较新的基于UNIX的计算机移动到该IBM。我有一个bash脚本,可将我的文件分成大约2MB的块,现在我试图编写一个pascal程序来在这些文件传输后重建它们。
我在这台计算机上找不到正确的读/写文件方法。我已经尝试了各种pascal教程站点,但是它们都是针对较新版本的(我跟随File Handling In Pascal的站点)。我能够创建一个空文件(如下所述),但是无法写入它。有人知道这种计算机的正确Pascal读写方法吗?
我知道这是一个晦涩的问题,因此,在此先感谢您为我提供的任何帮助!
详细信息:
当前正确创建文件的测试代码是:
program testingFiles;
uses Crt, Win;
const FILE_NAME = 'testFile.txt';
var outFile : File;
begin
writeln('creating file ...');
Assign(outFile, FILE_NAME);
rewrite(outFile);
end.
这是一些无效的测试代码,找不到该方法的
append()
和close()
:program testingFiles;
uses Crt, Win;
const FILE_NAME = 'testFile.txt';
var outFile : File;
begin
writeln('creating file ...');
Assign(outFile, FILE_NAME);
append(outFile);
writeln('this should be in the file');
close(outFile);
end.
这是另一种也不起作用的方法,
writeln()
方法仅打印到终端。但这确实可以编译。program testingFiles;
uses Crt, Win;
const FILE_NAME = 'testFile.txt';
var outFile : File;
begin
writeln('creating file ...');
Assign(outFile, FILE_NAME);
rewrite(outFile);
writeln('this should be in the file');
close(outFile);
end.
系统:如前所述,这是1989年的IBM PS2。
turbo
作为命令行pascal编辑器。 (自述文件的最新更新于1989年)同样,我知道这是一个晦涩的问题,因此,在此先感谢您为我提供的任何帮助!
最佳答案
我的Pascal内存非常生锈...但是正如其他人指出的那样,这是您应该考虑的事项:
program testingFiles;
uses Crt, System;
//No need of importin Win Win is for Windows enviorment, however I'm not sure if you need to use System, Sysutils or was there a Dos class???
const FILE_NAME = 'testFile.txt';
var outFile,inFile : File;
begin
writeln('creating file ...');
Assign(outFile, FILE_NAME);
rewrite(outFile);
//Now Open the first chunk of the file you want to concatenate
AssignFile(inFile, "fisrt_chunk.dat");
reset(inFile);
while not eof(inFile) do
begin
readln(inFile, s);
writeln(outFile,s);
end;
close(inFile);
end.
我再也没有安装Turbo/Borland Pascal了,所以我自己也不能编译它,不保证它会起作用,这更像是一个主意:
关于pascal - 在Turbo Pascal 5.5中在旧IBM PS/2上读/写文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35076417/