【发布时间】:2016-10-24 13:08:01
【问题描述】:
我想用 BOM 上传文件到 S3。我该怎么做?
var transferUtility = new TransferUtility(client);
string content = "hello";
byte[] b = DefaultEncoding.GetBytes(content);
using (var fileStream = new MemoryStream(b))
{
var request = new TransferUtilityUploadRequest
{
BucketName = bucket,
InputStream = fileStream,
Key = NormalizePath(Path.Combine(folder, file.Name)),
};
}
transferUtility.Upload(request);
当我从 S3 下载文件时,它是 UTF-8,而不是 UTF-8-BOM
【问题讨论】:
-
请详细说明。你的意思是你有一个带有 BOM 的文本文件,并且你想上传它?然后上传它。您的意思是您有一个没有 BOM 的文本文件,并且想像有 BOM 一样上传它吗?然后添加一个并上传。另外,你是不是编了一个内容编码?那条线应该做什么?
-
我稍微修改了代码。我想上传有 BOM 的文件。
-
那么您想在运行时添加 BOM 吗?
-
据我所知,当我执行此操作“DefaultEncoding.GetBytes”时,我是否将 BOM 添加到我的字节 [] b 中?但是,是的,我有内容“你好”,我想上传包含此内容的文件,并且文件必须有 BOM
-
不,您可以使用
Encoding.GetPreamble()获取 BOM 字节。