Description |
If the current stream has not been exhausted, up to Count characters are returned.
The stream position is updated accordingly.
|
| Notes | You must set the length of the target Char array, and it must have sufficient capacity to hold the returned characters.
Compare with the more flexible Read method, where a block of stream characters can be read into an array at a specific array position.
|
|
Microsoft MSDN Links |
System.IO
System.IO.BinaryReader
|
|
|
Reading blocks of bytes |
program Project1;
{$APPTYPE CONSOLE}
uses
System.IO;
var
MyFileStream : System.IO.FileStream;
MyFileWriter : System.IO.BinaryWriter;
MyFileReader : System.IO.BinaryReader;
MyCharArray : Array of Char;
Index : Integer;
begin
// Create and open our binary file as a stream
MyFileStream := System.IO.File.Open('C:DelphiBasics.txt',
System.IO.FileMode.Create);
// Create a BinaryWriter to allow writing to this file
MyFileWriter := System.IO.BinaryWriter.Create(MyFileStream);
// Write to the file
MyFileWriter.Write('A');
MyFileWriter.Write('B');
MyFileWriter.Write('C');
MyFileWriter.Write(49); // Chr(49) = '1'
MyFileWriter.Write(50); // Chr(50) = '2'
MyFileWriter.Write(51); // Chr(51) = '3'
MyFileWriter.Write(52); // Chr(52) = '4'
// Close the writer and the stream
MyFileWriter.Close;
MyFileStream.Close;
// Reopen the stream for reading
MyFileStream := System.IO.File.Open('C:DelphiBasics.txt',
System.IO.FileMode.Open);
// Create a BinaryReader to allow the file to be read back
MyFileReader := System.IO.BinaryReader.Create(MyFileStream);
// Declare our array to hold the returned data
SetLength(MyCharArray, 10);
// Get the whole file contents into our array
// Note that we do not necessarily get the same number of
// characters that we request : we actually get 7 here
MyCharArray := MyFileReader.ReadChars(10);
// Display our array contents
Console.WriteLine(MyCharArray);
// Close the reader and the stream
MyFileReader.Close;
MyFileStream.Close;
Console.Readline;
end.
| Show full unit code | ABC1234
|
|
|
|