Zipファイル解凍処理について
こんにちわ。
Javaの解凍処理について質問です。
Test.zipがあって、その中身が「テスト.xls」とした時、うまく解凍ができません。
Zipファイルの中身が日本語名ではなく、「Test.xls」であれば正常に解凍ができます。
下記の書き方では日本語名のファイルの入ったZipファイルを解凍することはできないのでしょうか?
どなたかご教授お願い致します。
String fname = null;
FileInputStream fis = null;
BufferedInputStream bis = null;
ZipInputStream zis = null;
ZipEntry zent = null;
FileOutputStream fos = null;
try
{
fis = new FileInputStream(FilePath);
bis = new BufferedInputStream(fis);
zis = new ZipInputStream(bis);
byte[] buf = new byte[1024];
int len;
// アーカイブ中に含まれるファイル情報の取得
while ((zent = zis.getNextEntry()) != null) {
int intResult = zent.toString().indexOf(".");
int intLength = zent.toString().length();
//ファイル名の変更(フォルダ名+社員コード)StringBuffer BuffRename = new StringBuffer();
BuffRename.append("D:\\test\\");
BuffRename.append(zent.getName().substring(0,intResult));
BuffRename.append(SyainCd);
BuffRename.append(zent.getName().substring(intResult,intLength));
fname = BuffRename.toString();
//書き込みファイルをオープン
fos = new FileOutputStream(fname);
while (-1 != (len = zis.read(buf, 0, buf.length))) {
fos.write(buf, 0, len);
}
//★★★
fos.close();
}
Catch・finallyは省略
補足
なるほど、指定しなければ、直りました。