In questa porzione di codice

Codice PHP:
if ( File.Exists"file.file" ) )
{
    
FileStream stream 
 new 
FileStream"file.file"FileMode.OpenFileAccess.ReadFileShare.Read );
    
BinaryReader reader = new BinaryReaderstream );

    
int index 0;

    while ( 
reader.PeekChar() != -1)
    {
        
// Read data. Data stored in the file is the key
        // The index of the key is the value
        
int key reader.ReadInt32();

        
m_Arraykey ] = index++;
    }

    
stream.Close();

Mi da questo errore la funzione PeekChar().


Codice PHP:
System.ArgumentExceptionBuffer dei caratteri di output troppo piccolo per contenere i caratteri decodificatiCodifica 'Unicode (UTF-8)'fallback 'System.Text.DecoderReplacementFallback'.
Nome parametrochars
   in System
.Text.Encoding.ThrowCharsOverflow()
   
in System.Text.Encoding.ThrowCharsOverflow(DecoderNLS decoderBoolean nothingDecoded)
   
in System.Text.UTF8Encoding.GetChars(BytebytesInt32 byteCountCharcharsInt32 charCountDecoderNLS baseDecoder)
   
in System.Text.DecoderNLS.GetChars(BytebytesInt32 byteCountCharcharsInt32 charCountBoolean flush)
   
in System.Text.DecoderNLS.GetChars(Byte[] bytesInt32 byteIndexInt32 byteCountChar[] charsInt32 charIndexBoolean flush)
   
in System.Text.DecoderNLS.GetChars(Byte[] bytesInt32 byteIndexInt32 byteCountChar[] charsInt32 charIndex)
   
in System.IO.BinaryReader.InternalReadOneChar()
   
in System.IO.BinaryReader.Read()
   
in System.IO.BinaryReader.PeekChar() 
Mi sapreste dire se esiste un modo alternativo di capire se si è arrivati alla fine del file?
Grazie