Difference between revisions of "Text"

From Lazarus wiki
Jump to navigationJump to search
m (Fixed syntax highlighting)
 
(5 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{{Text}}
 
{{Text}}
 +
 
The type '''TextFile''' (or, equivalent and older, just '''Text''') is used in a Pascal program to read from and write to a text file.
 
The type '''TextFile''' (or, equivalent and older, just '''Text''') is used in a Pascal program to read from and write to a text file.
  
<syntaxhighlight>{$mode objfpc}{$H+}
+
<syntaxhighlight lang=pascal>
 +
{$mode objfpc}{$H+}
 
var  
 
var  
 
   MyFile: TextFile;
 
   MyFile: TextFile;
Line 8: Line 10:
 
begin
 
begin
 
   AssignFile(MyFile, 'a.txt');
 
   AssignFile(MyFile, 'a.txt');
 +
 
   try
 
   try
     reset(MyFile);  
+
     reset(MyFile);   //Reopen the file for reading
 
     readln(MyFile, s);
 
     readln(MyFile, s);
     writeln('Text read from file: ', s)
+
     writeln('Text read from file: ', s)  
 +
 
 +
    {
 +
    or add some text:
 +
    append(MyFile);
 +
    writeln(MyFile, 'some text');
 +
    }
  
 
   finally
 
   finally
Line 25: Line 34:
  
 
* '''TextFile''' offers much more functions, and represents the usual concept of a text file. You can use Read, Readln, Write, Writeln to read/write from a text file a number of standard types, like strings, integers and floating-point values. [[End_of_Line|Line endings]] are also automatically handled: when reading, various line endings are recognized; when writing, the current OS line endings are used.
 
* '''TextFile''' offers much more functions, and represents the usual concept of a text file. You can use Read, Readln, Write, Writeln to read/write from a text file a number of standard types, like strings, integers and floating-point values. [[End_of_Line|Line endings]] are also automatically handled: when reading, various line endings are recognized; when writing, the current OS line endings are used.
 
[[Category:File Handling]]
 
[[category:Pascal]]
 
  
 
{{File}}
 
{{File}}

Latest revision as of 09:14, 29 February 2020

English (en) 日本語 (ja) русский (ru)

The type TextFile (or, equivalent and older, just Text) is used in a Pascal program to read from and write to a text file.

{$mode objfpc}{$H+}
var 
  MyFile: TextFile;
  s: string;
begin
  AssignFile(MyFile, 'a.txt');

  try
    reset(MyFile);    //Reopen the file for reading
    readln(MyFile, s);
    writeln('Text read from file: ', s) 
   
    {
    or add some text:
    append(MyFile);
    writeln(MyFile, 'some text'); 
    }

  finally
    CloseFile(MyFile)
  end
end.

The variable representing the text file (MyFile in the example above) may be used to read from, write to, or both to the actual file. It must be tied to the actual file by a run-time library routine AssignFile. Then the file must be opened by the Reset, Rewrite or Append procedure. You can read and write to file using Read, Readln, Write, Writeln. After you have finished processing the file, you should release the necessary file resources by closing the file calling CloseFile.

Note that TextFile type is very different than the file of char type:

  • file of char is just a simple sequence of single byte characters and you can only read or write a single character at a time. That is, you can only call Read(F, C) or Write(F, C) where C is variable of type char.
  • TextFile offers much more functions, and represents the usual concept of a text file. You can use Read, Readln, Write, Writeln to read/write from a text file a number of standard types, like strings, integers and floating-point values. Line endings are also automatically handled: when reading, various line endings are recognized; when writing, the current OS line endings are used.

File-related types, procedures and functions:

File - Text - AssignFile - CloseFile - Reset - Rewrite - Get - Put - Read - Readln - Write - Writeln