# Claunia.PropertyList.BinaryPropertyListParser

plist-cil : Claunia.PropertyList Namespace

# BinaryPropertyListParser Class

Parses property lists that are in Apple's binary format. Use this class when you are sure about the format of the property list. Otherwise use the PropertyListParser class.

Parsing is done by calling the static BinaryPropertyListParser.Parse(Byte[]), BinaryPropertyListParser.Parse(System.IO.FileInfo) and BinaryPropertyListParser.Parse(System.IO.Stream) methods.

## Syntax

public class BinaryPropertyListParser

## Remarks

Documentation for this section has not yet been entered.

## Requirements

Namespace: Claunia.PropertyList
Assembly: plist-cil (in plist-cil.dll)
Assembly Versions: 1.13.0.0, 1.14.0.0

## Members

See Also: Inherited members from object.

## Protected Constructors

| BinaryPropertyListParser () | Protected constructor so that instantiation is fully controlled by the static parse methods.

## Public Methods

static

CopyOfRange (byte[], int, int) : byte[]

> Copies a part of a byte array into a new array.

static

Parse (byte[]) : NSObject

> Parses a binary property list from a byte array.

static

Parse (System.IO.FileInfo) : NSObject

> Parses a binary property list file.

static

Parse (System.IO.Stream) : NSObject

> Parses a binary property list from an input stream.

static

ParseDouble (byte[]) : double

> Parses a double from a (big-endian) byte array.

static

ParseDouble (byte[], int, int) : double

> Parses a double from a (big-endian) byte array.

static

ParseLong (byte[]) : long

> Parses a long from a (big-endian) byte array.

static

ParseLong (byte[], int, int) : long

> Parses a long from a (big-endian) byte array.

static

ParseUnsignedInt (byte[]) : long

> Parses an unsigned integers from a byte array.

static

ParseUnsignedInt (byte[], int, int) : long

> Parses an unsigned integer from a byte array.

## Member Details

### BinaryPropertyListParser Constructor

> Protected constructor so that instantiation is fully controlled by the static parse methods.

> ## Syntax

> protected BinaryPropertyListParser ()

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### CopyOfRange Method

> Copies a part of a byte array into a new array.

> ## Syntax

> public static byte[] CopyOfRange (byte[] src, int startIndex, int endIndex)

> #### Parameters

> > src
> >   The source array.
> > startIndex
> >   The index from which to start copying.
> > endIndex
> >   The index until which to copy.

> #### Returns

> > The copied array.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### Parse Method

> Parses a binary property list from a byte array.

> ## Syntax

> public static NSObject Parse (byte[] data)

> #### Parameters

> > data
> >   The binary property list's data.

> #### Returns

> > The root object of the property list. This is usually a NSDictionary but can also be a NSArray.

> #### Exceptions

> > Type | Reason
> > --- | ---
> > Claunia.PropertyList.PropertyListFormatException | When the property list's format could not be parsed.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### Parse Method

> Parses a binary property list file.

> ## Syntax

> public static NSObject Parse (System.IO.FileInfo f)

> #### Parameters

> > f
> >   The binary property list file

> #### Returns

> > The root object of the property list. This is usually a NSDictionary but can also be a NSArray.

> #### Exceptions

> > Type | Reason
> > --- | ---
> > Claunia.PropertyList.PropertyListFormatException | When the property list's format could not be parsed.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### Parse Method

> Parses a binary property list from an input stream.

> ## Syntax

> public static NSObject Parse (System.IO.Stream fs)

> #### Parameters

> > fs
> >   The input stream that points to the property list's data.

> #### Returns

> > The root object of the property list. This is usually a NSDictionary but can also be a NSArray.

> #### Exceptions

> > Type | Reason
> > --- | ---
> > Claunia.PropertyList.PropertyListFormatException | When the property list's format could not be parsed.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseDouble Method

> Parses a double from a (big-endian) byte array.

> ## Syntax

> public static double ParseDouble (byte[] bytes)

> #### Parameters

> > bytes
> >   The bytes representing the double.

> #### Returns

> > The double represented by the given bytes.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseDouble Method

> Parses a double from a (big-endian) byte array.

> ## Syntax

> public static double ParseDouble (byte[] bytes, int startIndex, int endIndex)

> #### Parameters

> > bytes
> >   The bytes representing the double.
> > startIndex
> >   Beginning of the double in the byte array.
> > endIndex
> >   End of the double in the byte array.

> #### Returns

> > The double represented by the given bytes.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseLong Method

> Parses a long from a (big-endian) byte array.

> ## Syntax

> public static long ParseLong (byte[] bytes)

> #### Parameters

> > bytes
> >   The bytes representing the long integer.

> #### Returns

> > The long integer represented by the given bytes.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseLong Method

> Parses a long from a (big-endian) byte array.

> ## Syntax

> public static long ParseLong (byte[] bytes, int startIndex, int endIndex)

> #### Parameters

> > bytes
> >   The bytes representing the long integer.
> > startIndex
> >   Beginning of the long in the byte array.
> > endIndex
> >   End of the long in the byte array.

> #### Returns

> > The long integer represented by the given bytes.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseUnsignedInt Method

> Parses an unsigned integers from a byte array.

> ## Syntax

> public static long ParseUnsignedInt (byte[] bytes)

> #### Parameters

> > bytes
> >   The unsigned integer represented by the given bytes.

> #### Returns

> > The byte array containing the unsigned integer.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0

### ParseUnsignedInt Method

> Parses an unsigned integer from a byte array.

> ## Syntax

> public static long ParseUnsignedInt (byte[] bytes, int startIndex, int endIndex)

> #### Parameters

> > bytes
> >   The byte array containing the unsigned integer.
> > startIndex
> >   Beginning of the unsigned int in the byte array.
> > endIndex
> >   End of the unsigned int in the byte array.

> #### Returns

> > The unsigned integer represented by the given bytes.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: Claunia.PropertyList
> Assembly: plist-cil (in plist-cil.dll)
> Assembly Versions: 1.13.0.0, 1.14.0.0