Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否有任何理由不使用resource.getInputStream()?_Java_Spring_File Io - Fatal编程技术网

Java 是否有任何理由不使用resource.getInputStream()?

Java 是否有任何理由不使用resource.getInputStream()?,java,spring,file-io,Java,Spring,File Io,创建文件输入流是否有好处,如下所示: InputStream fileInputStream = new FileInputStream(resource.getFile()); InputStream resourceInputStream = resource.getInputStream(); 而不是使用由资源创建的InputStream,如下所示: InputStream fileInputStream = new FileInputStream(resource.getFile()

创建
文件输入流
是否有好处,如下所示:

InputStream fileInputStream = new FileInputStream(resource.getFile());
InputStream resourceInputStream = resource.getInputStream();
而不是使用由资源创建的
InputStream
,如下所示:

InputStream fileInputStream = new FileInputStream(resource.getFile());
InputStream resourceInputStream = resource.getInputStream();

资源是一个
org.springframework.core.io.resource

资源并不总是来自文件。它可以来自网络资源,也可以由类加载器动态生成。如果你这样做,你可能99%的时间都很好,但在特定的意外情况下你可能会遇到麻烦

一般来说,最好不要对任何事情的具体实现做出假设


通过使用
resource.getFile()
假设资源来自文件。

资源并不总是来自文件。它可以来自网络资源,也可以由类加载器动态生成。如果你这样做,你可能99%的时间都很好,但在特定的意外情况下你可能会遇到麻烦

一般来说,最好不要对任何事情的具体实现做出假设


通过使用
resource.getFile()
假设资源来自文件。

如果您只需要输入流,那么没有理由不使用它。
getFile
的目的是通过打开文件上的
FileInputStream
以外的方式访问文件,例如读取属性、移动、删除、通过NIO而不是传统IO打开文件等。

如果您只需要输入流,那么没有理由不使用它。
getFile
的要点是,除了在文件上打开
FileInputStream
之外,还可以通过其他方式访问文件,例如读取属性、移动、删除、通过NIO而不是传统IO打开文件等。

是的,我清楚地看到了使用
resource.getInputStream()的好处,“但不使用它有什么好处吗?”大卫帕森对不起,我倒着理解了你的问题。如果您只需要一个InputStream,我看不出有任何理由从该文件创建一个FileInputStream。是的,我清楚地看到了使用
resource.getInputStream()
的好处,但是不使用它有什么好处吗?@DavidPärsson抱歉,我向后理解了您的问题。如果您只需要一个InputStream,我看不出有任何理由从该文件创建FileInputStream。