/// <summary> /// Generates Metafile for the corresponding file that has been split /// </summary> public void GenerateMetaFile() { if(this.MD5Sum != "" && this.MD5Sum != null) fileMetaInfo = new FileMetaData(this.OrigFileName, this.NoOfSplitFiles, (long)this.ActualFileSize, this.MD5Sum, (int)this.CheckSumType); else fileMetaInfo = new FileMetaData(this.OrigFileName, this.NoOfSplitFiles, (long)this.ActualFileSize); using (Stream output = File.Create(fileSavePath + ".vipmeta")) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(output, fileMetaInfo); } }
/// <summary> /// Reads Back Metafile for Joining of Split Files /// </summary> /// <param name="saveDirectory">Folder name where the Metafile is saved</param> /// <param name="fileName">Filename of each of the split files with which they were saved</param> /// <returns></returns> public static FileMetaData ReadBackMetaFile(string saveDirectory, string fileName) { FileMetaData fileMetaInfo; using (Stream input = File.OpenRead(saveDirectory + fileName + ".vipmeta")) { BinaryFormatter formatter = new BinaryFormatter(); fileMetaInfo = (FileMetaData)formatter.Deserialize(input); } return fileMetaInfo; }