Post a reply :: Support Forum

Tip: Styles can be applied quickly to selected text.

Options
Add an Attachment

If you do not want to add an Attachment to your Post, please leave the Fields blank.

(maximum 10 MB; please compress large files; only common media, archive, text and programming file formats are allowed)

Options

Topic review

martin

Re: c# - Copy only new files from Zip

All you can do is to download the file to a local temporary folder, compare the contents and overwrite, if there's a change.

But in the end, it's the same as comparing the timestamp of the ZIP files and overwrite the local ZIP file whenever the remote file is newer.
thomasi

c# - Copy only new files from Zip

hello,

So i have a zip file on my SFTP server. In this zip file there are files.

And i have a zip file on my pc.

What i want is that when i push a button in my C# application, the zip file on my pc will be updated. So lets say if the zip file on the sftp server has a new file in it. The ftp function will only update the zip file on the pc with that file.

Currently it always overwrite the zip file.

Is this possible?

thanks , Thomas

ps:

SessionOptions sessionOptions = new SessionOptions

                {
                //i have information here.               
                    Protocol =
                    HostName = "",
                    UserName = "",
                    Password = "",
                    SshHostKeyFingerprint = "",
                };

                using (Session session = new Session())
                {                   
                    session.FileTransferProgress += SessionFileTransferProgress;
                    session.Open(sessionOptions);
                    TransferOptions transferOptions = new TransferOptions();
                    transferOptions.TransferMode = TransferMode.Binary;
                    transferOptions.OverwriteMode = OverwriteMode.Overwrite;
                    TransferOperationResult transferResult;
                    transferResult = session.GetFiles("[file on server]","[file on pc]", false, new TransferOptions { FilePermissions =  null, PreserveTimestamp = false });
                }