So the story is that I'm writing a file manager with two panels (just like Total Commander has). I'm trying to integrate the 3 main cloud providers (GDrive, Dropbox, OneDrive) into it. I'm writing this file manager in C# (WPF) and trying to use the official SDKs. One of the features is that you can copy files and folders from one cloud to another one, so like GDrive is on the left panel and Dropbox on the right panel and copying from GDrive to Dropbox.
One solution could be that the program downloads that file from one cloud temporarily to the client's machine, and then uploads from there to the other one. But I'd rather not use this for multiple reasons.
So I'm thinking about chunking up the file into several parts during download(like into 5MB parts), keep it in the memory just until I upload that chunk to the other cloud. In this way, I wouldn't use the client's machine to store that file (except for that 5MB part of course).
Is there any way to achieve this?