private Directory loadDir(ByteArrayInputStream s, Directory parent) { int id = s.readInt(); string name = s.ReadString(); Directory d = new Directory(this, parent, false, name, id); addDir(d); if (parent != null) { parent.childrenDirs.Add(d); } int dirCount = s.readInt(); for (int i = 0; i < dirCount; i++) { d.childrenDirs.Add(loadDir(s, d)); } int fileCount = s.readInt(); for (int i = 0; i < fileCount; i++) { int fid = s.readInt(); int fsize = s.readInt(); string fname = s.ReadString(); NetFile f = new NetFile(this, d, fname, fid, fsize); d.childrenFiles.Add(f); addFile(f); } return(d); }
private Directory loadDir(ByteArrayInputStream s, Directory parent) { int id = s.readInt(); string name = s.ReadString(); Directory d = new Directory(this, parent, false, name, id); addDir(d); if(parent != null) parent.childrenDirs.Add(d); int dirCount = s.readInt(); for (int i = 0; i < dirCount; i++) d.childrenDirs.Add(loadDir(s, d)); int fileCount = s.readInt(); for (int i = 0; i < fileCount; i++) { int fid = s.readInt(); int fsize = s.readInt(); string fname = s.ReadString(); NetFile f = new NetFile(this, d, fname, fid, fsize); d.childrenFiles.Add(f); addFile(f); } return d; }