Description |
Returns a FileStream object configured to suit the file Mode, Access and Share atributes required for the file specified in PathString.
These have the following values :
FileAccess :
Read | Read only access |
Write | Write only access |
ReadWrite | Read and write access |
FileMode :
Append | Append to the end of the file |
Create | Create as new, or overwrite if it exists |
CreateNew | Create as new - throws exception if it exists |
Open | Opens an existing file |
OpenOrCreate | Cerate as new or open if the file exists |
Truncate | Open an existing file and reduce to zero bytes |
FileShare :
None | Current access is exclusive |
Read | Others may concurrently read the file |
Write | Others may concurrently write to the file |
ReadWrite | Others may concurrently read and write to the file |
Inheritable | Allows teh file handle to be inherited by child processes |
|
| References | FileStream
|
|
Microsoft MSDN Links |
System.IO
System.IO.File
|
|
|
A simple example |
// Full Unit code. // ------------------------------------------------------------- // Create a new WinForm application, double click the form to // create an OnLoad event, and then replace the WinForm unit // with this text. unit WinForm; interface uses System.Drawing, System.Collections, System.ComponentModel, System.Windows.Forms, System.Data; type TWinForm = class(System.Windows.Forms.Form) \{REGION 'Designer Managed Code'\} // Note that REGION and ENREGION should be prefixed by a dollar sign strict private /// /// Required designer variable. /// Components: System.ComponentModel.Container; /// /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// procedure InitializeComponent; procedure TWinForm_Load(sender: System.Object; e: System.EventArgs); {ENDREGION} strict protected /// /// Clean up any resources being used. /// procedure Dispose(Disposing: Boolean); override; private { Private Declarations } public constructor Create; end; [assembly: RuntimeRequiredAttribute(TypeOf(TWinForm))] implementation \{REGION 'Windows Form Designer generated code'\} /// /// Required method for Designer support -- do not modify /// the contents of this method with the code editor. /// procedure TWinForm.InitializeComponent; begin // // TWinForm // Self.AutoScaleBaseSize := System.Drawing.Size.Create(5, 13); Self.ClientSize := System.Drawing.Size.Create(292, 266); Self.Name := 'TWinForm'; Self.Text := 'WinForm'; Include(Self.Load, Self.TWinForm_Load); end; {ENDREGION} procedure TWinForm.Dispose(Disposing: Boolean); begin if Disposing then begin if Components <> nil then Components.Dispose(); end; inherited Dispose(Disposing); end; constructor TWinForm.Create; begin inherited Create; // // Required for Windows Form Designer support // InitializeComponent; // // TODO: Add any constructor code after InitializeComponent call // end; procedure TWinForm.TWinForm_Load(sender: System.Object; e: System.EventArgs); program Project1;
{$APPTYPE CONSOLE}
uses
System.IO;
var
Path : String;
Stream : System.IO.FileStream;
MyByte : Integer;
begin
// Open the file for writing
Path := 'C:\DelphiBasics.txt';
Stream := System.IO.File.OpenWrite(path);
// Write to the file
Stream.WriteByte(65); // Chr(65) = 'A'
Stream.WriteByte(66); // Chr(66) = 'B'
Stream.WriteByte(67); // Chr(67) = 'C'
// Close the file
Stream.Close;
// Re-open for reading
Stream := System.IO.File.Open(Path,
System.IO.FileMode.Open,
System.IO.FileAccess.Read,
System.IO.FileShare.None);
// Display the contents
MyByte := Stream.ReadByte;
while MyByte >= 0 do
begin
Console.Write(Char(MyByte));
MyByte := Stream.ReadByte;
end;
// Close the stream
Stream.Close;
Console.Readline;
end. end. | Hide full unit code | ABC
|
|
|
|