public static SFSDirectory FromDirectory(String Path) { SFSDirectory Root = new SFSDirectory("/", true); FillSFSDirFromDisk(new DirectoryInfo(Path), Root); return(Root); }
private static void FillSFSDirFromDisk(DirectoryInfo Dir, SFSDirectory Dst) { foreach (var v in Dir.EnumerateFiles()) { Dst.Files.Add(new SFSFile(-1, v.Name, Dst) { Data = File.ReadAllBytes(v.FullName) }); } foreach (var v in Dir.EnumerateDirectories()) { SFSDirectory d = new SFSDirectory(v.Name, false) { Parent = Dst }; Dst.SubDirectories.Add(d); FillSFSDirFromDisk(v, d); } }
public SFSFile(Int32 Id, String Name, SFSDirectory Parent) { FileID = Id; FileName = Name; this.Parent = Parent; }