0
に私はこのコードを使用してS3にすべての私のローカルファイルをアップロードしています:C#の同期のみ、新しいファイルをAmazon S3
static string bucketName = "s3bucket";
static string directoryPath = @"C:\data\";
private void btnUpload_Click(object sender, EventArgs e) {
try {
TransferUtility directoryTransferUtility =
new TransferUtility(new AmazonS3Client(Amazon.RegionEndpoint.USWest2));
TransferUtilityUploadDirectoryRequest request =
new TransferUtilityUploadDirectoryRequest {
BucketName = bucketName,
Directory = directoryPath,
SearchPattern = "*.xml"
};
directoryTransferUtility.UploadDirectory(request);
MessageBox.Show("Upload completed");
} catch (AmazonS3Exception ex) {
MessageBox.Show(ex.Message);
}
}
私はすべてのファイルをS3に再アップロードされているコードを再度実行し、それが悪い場合私たちのローカルディレクトリに1000以上のファイルがあるとしましょう。
s3にすでに存在するファイルの再アップロードを避け、最後の同期以降にローカルディレクトリに置かれた新しいファイルのみをアップロードする方法はありますか?
リモートファイルとローカルファイルのリストを取得して比較し、新しいファイルをループごとに1つずつアップロードする必要がありますか、それとも簡単な方法がありますか?