import java.util.*;
import java.util.zip.*;
import java.io.*;
創(chuàng)新互聯(lián)主營大荔網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,App定制開發(fā),大荔h5微信平臺小程序開發(fā)搭建,大荔網(wǎng)站營銷推廣歡迎大荔等地區(qū)企業(yè)咨詢
class ZipFileHandle{
private String[] FileNameArray; //真實文件名存放數(shù)組
private String[] FileNameArrayShow; //需要顯示的文件名存放數(shù)組
private ZipInputStream zipFile; //zip輸入流對象
private ZipEntry entry; //zip文件入口對象
private int zipFileCount = 0; //zip中的文件總數(shù)[@more@]
/**
*初始化各個參數(shù) *通過類的套嵌來訪問文件
*將得到文件的清單附值給數(shù)組,以便在后面用戶選擇時從數(shù)組中獲得文件名
*/
public ZipFileHandle(File file){
try{
while (!(file.exists())) {
System.out.println("Plase input right path again: ");
BufferedReader userInput = new BufferedReader(new InputStreamReader(System.in));
String filepath = userInput.readLine();
file = new File(filepath);
}
zipFile = new ZipInputStream(new FileInputStream(file));
while ((zipFile.getNextEntry()) != null){
zipFileCount++;
}
FileNameArray = new String[zipFileCount];
FileNameArrayShow = new String[zipFileCount];
}catch(IOException e){
System.out.println("初始化錯誤?。。?);
e.printStackTrace();
}
}
/**
*生成文件目錄
*根據(jù)show的值來確定返回值
*如果show的值為"sh"則返回在屏幕上顯示的名稱
*如果show的值為"gr"則返回實際名稱
*/
public String[] getFileNameList(String show,File file){
try{
int i = 0;
String FileName;
zipFile = new ZipInputStream(new FileInputStream(file));
while ((entry = zipFile.getNextEntry()) != null){
FileName = entry.getName();
//真實文件名附值
FileNameArray[i] = FileName;
//顯示文件名附值
if (FileName.equals("")) FileName = "...";
FileName = Integer.toString(i) + "-|" + FileName;
FileNameArrayShow[i] = FileName;
i++;
}
zipFile.close();
//根據(jù)條件返回文件數(shù)組
if(show == "sh"){
return FileNameArrayShow;
}else{
return FileNameArray;
}
}catch(IOException e){
System.out.println("讀取zip文件內(nèi)的文件名出錯?。?!");
e.printStackTrace();
return null;
}
}
/**
*讀取文件內(nèi)容
*根據(jù)傳遞進來的zip文件對象和
*zip中所要顯示的文件
*用戶根據(jù)type來選擇返回的是unicode信息還字節(jié)信息
*如果type是"Str"則返回字符串信息,"Byte"則返回通過字節(jié)獲得的文件內(nèi)容
新聞標題:JAVA輸入輸出流詳解(G)
本文鏈接:http://aaarwkj.com/article26/pjcojg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作、網(wǎng)站建設(shè)、微信小程序、服務(wù)器托管
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)