我已成功使用VFS从HTTP,SFTP,FTP等下载文件。我需要获取文件的内容类型,但遇到了奇怪的事情,我不确定为什么会这样。

FileObject file = vfs.resolveFile(uri) ;
FileContent content = remote.getContent();

InputStream source = content.getInputStream();
ByteArrayOutputStream target = new ByteArrayOutputStream();
copy(source, target);

content.getSize(); // HACK: Prevents null-pointer in next line
String type = content.getContentInfo().getContentType();


如果我删除对getSize的调用,content.getContentInfo将返回null。为什么是这样?我想念什么吗?

最佳答案

正如@ Sam-Rad所写,它已固定在主干中(即将发布的VFS 2.1):

https://issues.apache.org/jira/browse/VFS-427

10-07 18:43