Esempio n. 1
0
        public override Task <bool> Backup(string fileName, byte[] contents, string contentType)
        {
            var saveTo = Path.Combine(GlobalBackupSettings.LocalDirectory.ReplaceVariables(Service), fileName);

            if (!_fileSystemService.DirectoryExists(Path.GetDirectoryName(saveTo)))
            {
                _fileSystemService.CreateDirectory(Path.GetDirectoryName(saveTo));
            }

            var memoryStream = new MemoryStream(contents);
            var byteBuffer   = new byte[1024 * 1024 * 2];

            memoryStream.Position = 0;
            while (memoryStream.Read(byteBuffer, 0, byteBuffer.Length) > 0)
            {
                _fileSystemService.AppendFile(saveTo, byteBuffer);
            }

            return(System.Threading.Tasks.Task.FromResult(true));
        }
Esempio n. 2
0
 /// <summary>
 /// Выполняет дозапись массива байтов в конец файла.
 /// </summary>
 /// <param name="path">Путь к файлу.</param>
 /// <param name="data">Массив байтов.</param>
 /// <returns>Количество записанных байтов.</returns>
 public void AppendFile(string path, byte[] data)
 {
     FileSystem.AppendFile(path, data);
 }