[Overview][Classes][Index] | Reference for unit 'IniFiles' (#fcl)

# TCustomIniFile

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Abstract ini file object

## Declaration

Source position: inifiles.pp line 121

`type TCustomIniFile = class`
`public`
`constructor Create(); virtual;` |  | Instantiate a new instance of TCustomIniFile.
`destructor Destroy; override;` |  | Remove the TCustomIniFile instance from memory
`function SectionExists(); virtual;` |  | Check if a section exists.
`function ReadString(); virtual; abstract;` |  | Read a string valued key
`procedure WriteString(); virtual; abstract;` |  | Write a string value
`function ReadInteger(); virtual;` |  | Read an integer value from the file
`procedure WriteInteger(); virtual;` |  | Write an integer value
`function ReadInt64(); virtual;` |  | Read Int64 value
`procedure WriteInt64(); virtual;` |  | Write a Int64 value.
`function ReadBool(); virtual;` |  |
`procedure WriteBool(); virtual;` |  | Write boolean value
`function ReadDate(); virtual;` |  | Read a date value
`function ReadDateTime(); virtual;` |  | Read a Date/Time value
`function ReadFloat(); virtual;` |  | Read a floating point value
`function ReadTime(); virtual;` |  | Read a time value
`function ReadBinaryStream(); virtual;` |  | Read binary data
`procedure WriteDate(); virtual;` |  | Write date value
`procedure WriteDateTime(); virtual;` |  | Write date/time value
`procedure WriteFloat(); virtual;` |  | Write a floating-point value
`procedure WriteTime(); virtual;` |  | Write time value
`procedure WriteBinaryStream(); virtual;` |  | Write binary data
`procedure ReadSection(); virtual; abstract;` |  | Read the key names in a section
`procedure ReadSections(); virtual; abstract;` |  | Read the list of sections
`procedure ReadSectionValues(); virtual; abstract;` |  | Read names and values of a section
`procedure EraseSection(); virtual; abstract;` |  | Clear a section
`procedure DeleteKey(); virtual; abstract;` |  | Delete a key from a section
`procedure UpdateFile; virtual; abstract;` |  | Update the file on disk
`function ValueExists(); virtual;` |  | Check if a value exists
`property FileName: string; [r]` |  | Name of the .ini file
`property EscapeLineFeeds: Boolean; [r]` |  | Should linefeeds be escaped ?
`property CaseSensitive: Boolean; [rw]` |  | Are key and section names case sensitive
`property StripQuotes: Boolean; [rw]` |  | Should quotes be stripped from string values
`end;`

## Inheritance

`TCustomIniFile` |  | Abstract ini file object
`TObject`

## Description

TCustomIniFile implements all calls for manipulating a .ini. It does not implement any of this behaviour, the behaviour must be implemented in a descendent class like TIniFile or TMemIniFile.

Since TCustomIniFile is an abstract class, it should never be created directly. Instead, one of the TIniFile or TMemIniFile classes should be created.

## See also

TIniFile |  | Ini file implementation
TMemIniFile |  | Inifile cached in memory

Documentation generated on: Feb 26 2014