Example #1
0
        public void MergeShard(ShardMergeInfo shardMergeInfo)
        {
            var shardParent = Path.Combine(shardPath, shardMergeInfo.UploadId);
            var fileNames   = Directory.EnumerateFiles(shardParent, $"{shardMergeInfo.UploadId}_*");

            fileNames = fileNames.OrderBy(f => f.Split("_")[1]);

            var outFilePath = Path.Combine(basePath, shardMergeInfo.Prefix, shardMergeInfo.FileName);

            MergeFile(fileNames.ToArray(), outFilePath);
            //如果没有出现异常,则删除分片文件

            if (Directory.Exists(shardParent))
            {
                Directory.Delete(shardParent, true);
            }
        }
Example #2
0
 public void MergeShard(ShardMergeInfo shardMergeInfo)
 {
     throw new System.NotImplementedException();
 }
Example #3
0
 public async Task <ResponseResult> MergeShard(ShardMergeInfo shardMergeInfo)
 {
     _fileService.MergeShard(shardMergeInfo);
     return(await Task.FromResult(new ResponseResult()));
 }