如何将 FileInputStream 转换为 S3ObjectInputStream

Ivo*_*ory 5 inputstream amazon-s3 fileinputstream

我想将 File InputStream 转换为 S3ObjectInputStream,我以下面的方式尝试过,但没有成功,我得到了

java.io.FileInputStream cannot be cast to com.amazonaws.services.s3.model.S3ObjectInputStream
Run Code Online (Sandbox Code Playgroud)

这是我的代码

InputStream is = new FileInputStream(file);
S3ObjectInputStream sObject = (S3ObjectInputStream)is;
Run Code Online (Sandbox Code Playgroud)

小智 6

使用下面的构造函数将 an 转换InputStream为 a S3ObjectInputStream

var s3ObjectInputStream = new S3ObjectInputStream(inputStream, null);
Run Code Online (Sandbox Code Playgroud)

您可以安全地使用null构造函数 ( HttpRequestBase) 中的第二个参数,因为abort使用它的方法在强制转换中不可用InputStream


Hur*_*rix -6

你需要扮演InputStream

InputStream is = new FileInputStream(file);
S3ObjectInputStream sObject = (InputStream) is;
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你

  • 不,实际上,代码甚至无法编译。您无法将“InputStream”分配给“S3ObjectInputStream”并且强制转换是多余的...“is”已经声明为“InputStream”.. (5认同)