Beispiel #1
0
        private async Task UpLargeFile(ScannedFileSystemInfo file, B2 b2)
        {
            if (file.Length >= 100 * (1000 * 1000))
            {
                Console.WriteLine("Wait...Upload large file => " + file.Info.Name);
                string result = await b2.UploadLargeFile(b2.BucketId, file.Info.Name, b2.ApiUrl, b2.AuthorizationToken);

                string fileId  = Regex.Match(result, "fileId\": \"(.*?)\"").Groups[1].Value;
                string partUrl = await b2.UploadLargeFilePartUrl(fileId, b2.ApiUrl, b2.AuthorizationToken);

                string    uploadUrl          = Regex.Match(partUrl, "uploadUrl\": \"(.*?)\"").Groups[1].Value;
                string    authorizationToken = Regex.Match(partUrl, "authorizationToken\": \"(.*?)\"").Groups[1].Value;
                ArrayList result3            = await b2.UploadPartOfFile(file.Info.FullName, uploadUrl, authorizationToken);

                await b2.LargeFileUploadFinished(fileId, b2.ApiUrl, b2.AuthorizationToken, result3);

                Console.WriteLine($"File {file.Info.Name} Uploaded!");
            }
        }