当前位置: 首页 > 知识库问答 >
问题:

如何在Java中将InputStream转换为S3ObjectInputStream?

邓禄
2023-03-14

我想将文件输入流转换为S3ObjectInputStream。

这是我当前的代码:

InputStream is = new FileInputStream(file);
S3ObjectInputStream sObject = (S3ObjectInputStream)is;

然而,它给出了错误:

java.io.FileInputStream cannot be cast to com.amazonaws.services.s3.model.S3ObjectInputStream

共有3个答案

濮阳翔
2023-03-14

您需要强制转换为输入流

InputStream is = new FileInputStream(file);
S3ObjectInputStream sObject = (InputStream) is;

希望有帮助

苏季同
2023-03-14

使用构造函数

new S3ObjectInputStream(InputStream in, ...

我用的是aws-java-sdk版本1.11.526

严玉泽
2023-03-14

使用以下构造函数将输入流转换为S3ObjectInputStream:

var s3ObjectInputStream = new S3ObjectInputStream(inputStream, null);

对于构造函数(HttpRequestBase)中的第二个参数,您可以安全地使用null,因为使用它的中止方法在castInputStream中不可用。

 类似资料:
  • 问题内容: 假设我有一个包含文本数据的文件,并且想将其转换为(例如,这样我就可以将流的内容写入日志文件)。 将并将其转换为的最简单方法是什么? 问题答案: 这是我的版本

  • 问题内容: 给定一个字符串: 如何将其转换为? 问题答案: 像这样: 请注意,这假设你需要一个,它是一个字节流,它表示编码为UTF-8的原始字符串。 对于小于7的Java版本,请替换为。

  • 问题内容: 如果有一个对象,应该如何处理该对象并产生一个String? 假设我有一个包含文本数据的文件,并且想将其转换为String,因此例如可以将其写入日志文件。 InputStream将并将其转换为的最简单方法是String什么? 问题答案: 做到这一点的一种好方法是使用将apache复制 甚至 另外,如果您不想混合和 ,则可以使用

  • 问题内容: 我有将ZipInputSream转换为byte []的代码,但我不知道如何将其转换为inputstream。 问题答案: 这是我解决此问题的方法。现在,我可以将单个文件从ZipInputStream作为InputStream传输到内存。

  • 问题内容: 我正处于开发阶段,在那里我有两个模块,从一个模块我得到的输出为a OutputStream,第二个模块仅接受InputStream。您是否知道如何转换OutputStream为InputStream可以连接这两部分的方式(反之亦然,我是说真的) 谢谢 问题答案: 是您向其中写入数据的地方。如果某个模块公开了,则期望在另一端读取一些内容。 另一方面,暴露出的信息表示您需要侦听此流,并且会

  • 问题内容: 我正在研究一个Java Web应用程序,其中文件将存储在数据库中。最初,我们只需调用结果集即可检索数据库中已有的文件: 然后使用显而易见的构造函数将此字节数组转换为: 直到我们开始尝试存储和检索更大的文件之前,这一直很好。将整个文件内容转储到字节数组中,然后再从中构建出来,仅需要太多内存。 我的直接想法是使用来检索数据库中的数据流,并以某种内存有效的方式将其转换为数据流。不幸的是,似乎