XML can be encrypted or compressed to make it binary. Thats how I store my game config now.

While Array[0.255] of Char will work writeing String[255] is easier. Look up ShortStrings in the Delphi Help.

There are a number of nice component sets out there for zipping and encrypting files: look at the DCP Components http://www.cityinthesky.co.uk/cryptography.html and the
dzdel.zip compression libraries http://swiss.torry.net/vcl/compress/std/dzdel.zip

If you have your information in a Memory Stream you can then encrypt the stream and save to disk. This allows you to save and load encrypted data. (My data gets save with a key of about 100 bytes long - then the key is added to the config XML which is then encrypted using another 32byte binary key).