【发布时间】:2017-11-07 10:08:17
【问题描述】:
我正在尝试从 S3 将大文件读入块中,而不为并行处理切割任何行。
让我举例说明: S3上有1G大小的文件。我想将此文件分成 64 MB 的块。我可以这样做很容易:
S3Object s3object = s3.getObject(new GetObjectRequest(bucketName, key));
InputStream stream = s3object.getObjectContent();
byte[] content = new byte[64*1024*1024];
while (stream.read(content) != -1) {
//process content here
}
但是块的问题是它可能有 100 个完整的行和一个不完整的行。但我无法处理不完整的行,也不想丢弃它。
有什么办法可以处理这种情况吗?表示所有卡盘都没有偏线。
【问题讨论】:
标签: java amazon-web-services amazon-s3 io aws-java-sdk