1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.rat.document.impl;
20
21 import java.io.File;
22 import java.io.FileInputStream;
23 import java.io.IOException;
24 import java.io.InputStream;
25 import java.util.zip.ZipException;
26 import java.util.zip.ZipInputStream;
27
28 public class DocumentImplUtils {
29
30 public final static String toName(File file) {
31 String path = file.getPath();
32 String normalisedPath = path.replace('\\', '/');
33 return normalisedPath;
34 }
35
36 public static final boolean isZipStream(InputStream stream) {
37 ZipInputStream zip = new ZipInputStream(stream);
38 try {
39 zip.getNextEntry();
40 return true;
41 } catch (ZipException e) {
42 return false;
43 } catch (IOException e) {
44 return false;
45 } finally {
46 if (zip != null) {
47 try {
48 zip.close();
49 } catch (Throwable t) {
50
51 }
52 }
53 }
54 }
55
56 public static final boolean isZip(File file) {
57 try {
58 return isZipStream(new FileInputStream(file));
59 } catch (IOException e) {
60 return false;
61 }
62 }
63
64 }