コード例 #1
0
        private ArrayList GetAllProjectSyncTargetFileForDirectory(MOG_ControllerSyncData targetGameData, string path)
        {
            try
            {
                ArrayList fileList = MOG_DBAssetAPI.GetAllProjectSyncTargetFilesForDirectory(targetGameData.GetSyncDirectory(), path, targetGameData.GetPlatformName());

                string targetDir = path.ToLower().Replace(targetGameData.GetSyncDirectory().ToLower(), "");
                int    depth     = DosUtils.DirectoryDepth(targetDir);

                SortedSet directories = new SortedSet();
                foreach (string file in fileList)
                {
                    if (targetDir.Length == 0)
                    {
                        directories.Add(targetGameData.GetSyncDirectory() + "\\" + DosUtils.DirectoryGetAtDepth(file, depth));
                    }
                    else if (file.ToLower().IndexOf(targetDir.ToLower()) != -1)
                    {
                        directories.Add(targetGameData.GetSyncDirectory() + "\\" + DosUtils.DirectoryGetAtDepth(file, depth));
                    }
                    else
                    {
                        directories.Add(targetGameData.GetSyncDirectory() + "\\" + DosUtils.DirectoryGetAtDepth(file, depth));
                    }
                }

                ArrayList finalFileList = new ArrayList();
                foreach (string dir in directories)
                {
                    finalFileList.Add(dir);
                }

                return(finalFileList);
            }
            catch
            {
                return(new ArrayList());
            }
        }