public class FileDemo {
public static void main(String[] args){
readFile("D://tar压缩包.tar");
}
public static void readFile(String path){
InputStream inputStream = null;
TarInputStream zis = null;
InputStreamReader inr = null;
BufferedReader reader = null;
try{
File file = new File(path);
System.out.println(file.getName());
inputStream = new FileInputStream(file);
zis = new TarInputStream(inputStream);
inr = new InputStreamReader(zis,"GBK");
reader = new BufferedReader(inr);
TarEntry entry = null;
String lineTxt = null;
while ((entry = zis.getNextEntry()) != null){
System.out.println(entry.getName());
while ((lineTxt = reader.readLine()) != null){
System.out.println(lineTxt);
}
}
}catch (FileNotFoundException e){
e.printStackTrace();
}catch (Exception e){
e.printStackTrace();
}finally {
try {
reader.close();
inr.close();
zis.close();
inputStream.close();
} catch (Exception e){
e.printStackTrace();
}
}
}
}