ファイルを S3 バケットにアップロードしようとしています。Amazon SDK AWSSDK を使用しています。
ほとんどすべてのファイルがアップロードされますが、一部のファイル名には次のような言語と文字が混在しています。"ms.video.downloader/music/youtube/даша астафьева & nikita - синее платье.mp3"
私のコードは
var request = new PutObjectRequest();
try {
using (var fileStream = new FileStream(file.LocalPath, FileMode.Open)) {
request.WithBucketName(_bucketName)
.WithCannedACL(S3CannedACL.PublicRead).WithMetaData(metadata)
.WithKey(file.S3Path).InputStream = fileStream;
client.PutObject(request);
}
} catch (Exception) {
}
と
file.S3Path 値に「ms.video.downloader/music/youtube/даша астафьева & nikita - синее платье.mp3」が含まれている場合、このキーにより例外が発生します。
どうすればこれを処理できますか? Key 値は Unicode であると読んだので、問題はないはずです。