首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与请求不同的AWS S3 GetObjectResponse.ResponseStream长度

与请求不同的AWS S3 GetObjectResponse.ResponseStream长度
EN

Stack Overflow用户
提问于 2013-09-09 01:18:26
回答 1查看 1.6K关注 0票数 1

我在从亚马逊S3读取对象数据时遇到了严重的问题。我读取特定字节范围的代码如下所示。

如果您检查response.contentLength,您会发现它的值是正确的,即结束启动。但是,响应流的长度小于我询问的内容以及它在ContentLength中的内容。我没有得到我所要求的所有数据,我也不知道为什么和哪一部分被修剪。

代码语言:javascript
复制
                GetObjectRequest request = new GetObjectRequest()
                {
                    BucketName = m_BucketName,
                    Key = m_FileName,
                    ByteRangeLong = new Amazon.S3.Model.Tuple<long, long>(start, end)
                };
                GetObjectResponse response = m_AwsClient.GetObject(request);
                using (Stream responseStream = response.ResponseStream)
                {
                    using (StreamReader reader =
                        new StreamReader(responseStream))
                    {
                        strResponse = reader.ReadToEnd();
                    }
                }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-09 16:56:20

这是编码问题。StreamReader类默认为UTF-8编码,它忽略它无法理解的任何字符。如果我在StreamReader构造函数中将编码设置为默认值,它就会被解析。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18690323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档