Beispiel #1
0
    public static void Move(string from, string to)
    {
        StorageFolder folder       = ES2DirectoryUtility.GetStorageFolder(from);
        StorageFile   file         = OpenStorageFile(from, folder);
        Task          moveFileTask = Task.Run(async() => { await file.MoveAsync(folder, to, NameCollisionOption.ReplaceExisting); });

        moveFileTask.Wait();
    }
Beispiel #2
0
 private Stream CreateStorageStream()
 {
     if (!ES2DirectoryUtility.Exists(settings.filenameData.directoryPath))
     {
         ES2DirectoryUtility.CreateDirectory(settings.filenameData.directoryPath);
     }
     return(ES2FileUtility.CreateFileStream(settings.filenameData.filePath, settings.fileMode, settings.bufferSize));
 }
Beispiel #3
0
    private Stream CreateWriteStream()
    {
        if (settings.optimizeMode == ES2Settings.OptimizeMode.Fast)
        {
            return(new MemoryStream());
        }
        else
        {
            if (!ES2DirectoryUtility.Exists(settings.filenameData.directoryPath))
            {
                ES2DirectoryUtility.CreateDirectory(settings.filenameData.directoryPath);
            }

            return(ES2FileUtility.CreateFileStream(settings.filenameData.filePath + "tmp", ES2Settings.ES2FileMode.Create, settings.bufferSize));
        }
    }
Beispiel #4
0
 public static void DeleteFile(ES2Settings settings)
 {
     if (settings.filenameData.IsFile())
     {
         if (ES2FileUtility.Exists(settings.filenameData.filePath))
         {
             ES2FileUtility.Delete(settings.filenameData.filePath);
         }
     }
     else if (settings.filenameData.IsFolder())
     {
         if (ES2DirectoryUtility.Exists(settings.filenameData.filePath))
         {
             ES2DirectoryUtility.Delete(settings.filenameData.filePath, true);
         }
     }
 }
Beispiel #5
0
    public static bool Exists(string path)
    {
        string[] files = ES2DirectoryUtility.GetFiles(path, "*");

        foreach (string file in files)
        {
            if (file == path)
            {
                return(true);
            }
        }
        return(false);

/*StorageFolder folder = ES2DirectoryUtility.GetStorageFolder(path);
 * if(OpenStorageFile(path, folder) == null)
 * return false;
 * return true;*/
    }
Beispiel #6
0
    public static string[] GetFiles(ES2Settings settings, string extension)
    {
        if (settings.saveLocation == ES2Settings.SaveLocation.Resources || settings.saveLocation == ES2Settings.SaveLocation.PlayerPrefs)
        {
            Debug.LogError("Easy Save 2 Error: You can only use GetFiles when using the File save location.");
        }

        if (!settings.filenameData.IsFolder())
        {
            Debug.LogError("Easy Save 2 Error: You should only provide GetFiles with a path to a folder, not a file or tag.");
        }

        string[] files = ES2DirectoryUtility.GetFiles(settings.filenameData.directoryPath, extension);

        for (int i = 0; i < files.Length; i++)
        {
            string[] strings = files[i].Split(new char[] { '/', '\\' });
            files[i] = strings[strings.Length - 1];
        }
        return(files);
    }
Beispiel #7
0
 public static void MoveFile(ES2Settings settings, ES2Settings newSettings)
 {
     if (settings.filenameData.IsFile())
     {
         if (ES2FileUtility.Exists(settings.filenameData.filePath))
         {
             if (!ES2DirectoryUtility.Exists(newSettings.filenameData.directoryPath))
             {
                 ES2DirectoryUtility.CreateDirectory(newSettings.filenameData.directoryPath);
             }
             ES2FileUtility.Move(settings.filenameData.filePath, newSettings.filenameData.filePath);
         }
     }
     else if (settings.filenameData.IsFolder() && ES2DirectoryUtility.Exists(settings.filenameData.filePath))
     {
         if (ES2DirectoryUtility.Exists(settings.filenameData.filePath))
         {
             ES2DirectoryUtility.Move(settings.filenameData.directoryPath, newSettings.filenameData.directoryPath);
         }
     }
 }
Beispiel #8
0
 public static StorageFile OpenStorageFile(string path)
 {
     return(OpenStorageFile(path, ES2DirectoryUtility.GetStorageFolder(path)));
 }
Beispiel #9
0
    public static bool Exists(ES2Settings settings)
    {
        // Resources
        if (settings.saveLocation == ES2Settings.SaveLocation.Resources)
        {
            if (settings.filenameData.extension != ".bytes")
            {
                Debug.LogError("Easy Save 2 Error: Can only check existence of files from Resources with the extension '.bytes'.");
            }

            TextAsset data = Resources.Load(settings.filenameData.resourcesPath) as TextAsset;

            if (settings.filenameData.HasTag())
            {
                return(CheckForTagInBytes(settings.filenameData.tag, data.bytes));
            }
            else if (data != null)
            {
                return(true);
            }
            return(false);
        }
        else if (settings.saveLocation == ES2Settings.SaveLocation.PlayerPrefs)
        {
            if (!settings.filenameData.HasTag())
            {
                return(PlayerPrefs.HasKey(settings.filenameData.playerPrefsPath));
            }

            if (!PlayerPrefs.HasKey(settings.filenameData.playerPrefsPath))
            {
                return(false);
            }

            using (ES2Reader reader = ES2Reader.Create(settings))
            {
                bool exists = reader.TagExists();
                return(exists);
            }
        }
        else if (settings.filenameData.IsURL())
        {
            return(false);
        }

        else if (settings.filenameData.HasTag())
        {
            if (!ES2FileUtility.Exists(settings.filenameData.filePath))
            {
                return(false);
            }

            using (ES2Reader reader = ES2Reader.Create(settings))
            {
                bool exists = reader.TagExists();
                return(exists);
            }
        }
        else
        {
            if (settings.filenameData.IsFolder())
            {
                return(ES2DirectoryUtility.Exists(settings.filenameData.directoryPath));
            }
            return(ES2FileUtility.Exists(settings.filenameData.filePath));
        }
    }
Beispiel #10
0
 public static void CreateFolder(string identifier)
 {
     ES2DirectoryUtility.CreateDirectory(identifier);
 }