创建FileInputStream
是否有利于此:
InputStream fileInputStream = new FileInputStream(resource.getFile());
而不是使用资源创建的InputStream
,如下所示:
InputStream resourceInputStream = resource.getInputStream();
资源是org.springframework.core.io.Resource
。
答案 0 :(得分:3)
资源并非总是来自文件。它可以来自网络资源,也可以由类加载器动态生成。如果你这样做,99%的时间可能会很好,但你可能在特定的意外情况下遇到麻烦。
作为一般规则,最好不要对任何事情的具体实施做出假设。
使用resource.getFile()
假设资源来自文件。
答案 1 :(得分:1)
如果您只需要输入流,则没有理由不使用它。 getFile
的要点是以不同于打开FileInputStream
的方式访问文件,例如读取属性,移动,删除,通过NIO而不是经典IO打开它等等。