Показать сообщение отдельно

Помогите решить задачу на C# за Money
  #1  
Старый 27.05.2009, 14:15
MiRiN
Новичок
Регистрация: 25.07.2008
Сообщений: 5
Провел на форуме:
2952

Репутация: -1
По умолчанию Помогите решить задачу на C# за Money

Условия задачи:
Необходимо разработать набор классов, обеспечивающих работу с типизированными файлами как в языке Pascal:
• TypedFile<T>
o методы:
 void Assign(String filename)
 void Reset()
 void Rewrite(T[] values)
 void Append();
 void Seek();
 void Truncate();
 void Write(T value);
 T Read();
o свойства:
 int RecordSize;
 int FileSize;
 FileMode FileMode; (FileMode – перечисление)
 String Filename;
 int Pos;
 bool Eof;
• ITypedDataConverter<T> – используется внутри класса TypedFile<T> для преобразования объектов (экземпляров структур или классов T) в массив байтов фиксированной длины (RecordSize и обратно) и обратно; предположительно передается как параметр в конструктор класса TypedFile;
o методы:
 byte[] ToByteArray(T value);
 T FromByteArray(byte[] data);
o своиства:
 int RecordSize
• DelegatesTypedDataConverter<T>: ITypedDataConverter<T> – класс, экземпляр которого можно сконструировать, указав размер записи T, а также два делегата ToByteArrayDelegate и FromByteArrayDelegate соотвествующего типа;
• TypedFileException – класс, описывающий исключения, которые могут происходить в ходе работы c типизированными файлами.
• TypedFileUtils
o методы:
 static void Remove<T>(TypedFile<T>, int pos);
 static bool Exists<T>(TypedFile<T>, TestDelegate<T>);
 static T[] Read<T>(TypedFile<T>);
 static T[] Read<T>(TypedFile<T>, TestDelegate<T>);
 static T ReadFirst<T>(TypedFile<T>, TestDelegate<T>);
 static T ReadLast<T>(TypedFile<T>, TestDelegate<T>);
 static int GetIndex<T>(TypedFile<T>, TestDelegate<T>);
 static int FindLastIndex<T>(TypedFile<T>, TestDelegate<T>);
 static void ForEach(IList<T>, ActionDelegate<T>);
 static void ChangeAll<T>(TypedFile<T>, ActionDelegate<T>);
 static void Sort(TypedFile<T>, CompareDelegate<T>);
 static bool CheckForAll<T>( TypedFile<T>, TestDelegate<T>);
Также необходимо разработать серию примеров, демострирующих основные аспекты работы с реализованной библиотекой работы с типизированными файлами.

ОЧЕНЬ СРОЧНО НАДО... Сумму обговорим позже.