请帮助。我想从zip文件中读取文件。我的zip文件是MultipartFile。然后,我使用ZipInputStream获取其输入文件,但是,它给出了找不到该文件的错误。
public String importProject(MultipartFile file) throws IOException, ParseException {
//Reading the input of zip file,
ZipInputStream zin = new ZipInputStream(file.getInputStream());
ZipEntry ze;
FileInputStream excel = null;
ArrayList<AnimationSvg> animationSvgs = new ArrayList<>();
while ((ze = zin.getNextEntry()) != null) {
if(ze.getName().contains(".xlsx")){
excel = new FileInputStream(ze.getName());
}
else if(ze.getName().contains(".svg")){
FileInputStream svg = new FileInputStream(ze.getName());
AnimationSvg animationSvg = new AnimationSvg();
animationSvg.setName(ze.getName());
StringBuilder svgContent = new StringBuilder();
int i;
while((i = svg.read())!=-1) {
svgContent.append(String.valueOf((char) i));
}
animationSvg.setSvgContent(String.valueOf(svgContent));
animationSvgs.add(animationSvg);
}
zin.closeEntry();
}
zin.close();
答案 0 :(得分:1)
zip存档中的条目不是文件。只是zip中压缩字节的序列。
完全不使用FileInputStream。只需从ZipInputStream中读取zip条目数据即可:
pylint --help-msg=<code-or-name>