mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-10-31 08:11:29 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
| Program Example20;
 | |
| 
 | |
| { Program to demonstrate the fdRead and fdTruncate functions. }
 | |
| 
 | |
| Uses linux;
 | |
| 
 | |
| Const Data : string[10] = '12345687890';
 | |
| 
 | |
| Var FD : Longint;
 | |
|     l : longint;
 | |
|         
 | |
| begin
 | |
|   FD:=fdOpen('test.dat',open_wronly or open_creat,octal(666));
 | |
|   if fd>0 then
 | |
|     begin
 | |
|     { Fill file with data } 
 | |
|     for l:=1 to 10 do
 | |
|       if fdWrite (FD,Data[1],10)<>10 then
 | |
|         begin
 | |
|         writeln ('Error when writing !');
 | |
|         halt(1);
 | |
|         end;
 | |
|     fdClose(FD);
 | |
|     FD:=fdOpen('test.dat',open_rdonly);
 | |
|     { Read data again }
 | |
|     If FD>0 then
 | |
|       begin
 | |
|       For l:=1 to 5 do 
 | |
|         if fdRead (FD,Data[1],10)<>10 then
 | |
|           begin
 | |
|           Writeln ('Error when Reading !');
 | |
|           Halt(2);
 | |
|           end;
 | |
|       fdCLose(FD);
 | |
|       { Truncating file at 60 bytes }
 | |
|       { For truncating, file must be open or write }    
 | |
|       FD:=fdOpen('test.dat',open_wronly,octal(666));
 | |
|       if FD>0 then
 | |
|         begin 
 | |
|         if not fdTruncate(FD,60) then
 | |
|            Writeln('Error when truncating !');
 | |
|         fdClose (FD);
 | |
|         end;
 | |
|       end;
 | |
|     end;
 | |
| end.
 | 
