一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java解壓zip文件完整代碼分享

Java解壓zip文件完整代碼分享

2021-02-02 11:21runerering Java教程

這篇文章主要介紹了Java解壓zip文件完整代碼分享,向大家分享了兩部分代碼示例,具有一定參考價值,需要的朋友可以了解下。

關于Java解壓zip文件,我覺得也沒啥好多說的,就是干唄。。代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
package com.lanyuan.assembly.util;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;
/**
 * 解壓Zip文件工具類
 * @author zhangyongbo
 *
 */
public class ZipUtil
{
  private static final int buffer = 2048;
 /**
  * 解壓Zip文件
  * @param path 文件目錄
  */
 public static void unZip(String path)
   {
    int count = -1;
    String savepath = "";
    File file = null;
    InputStream is = null;
    FileOutputStream fos = null;
    BufferedOutputStream bos = null;
    savepath = path.substring(0, path.lastIndexOf(".")) + File.separator; //保存解壓文件目錄
    new File(savepath).mkdir(); //創(chuàng)建保存目錄
    ZipFile zipFile = null;
    try
    {
      zipFile = new ZipFile(path,"gbk"); //解決中文亂碼問題
      Enumeration<?> entries = zipFile.getEntries();
      while(entries.hasMoreElements())
      {
        byte buf[] = new byte[buffer];
        ZipEntry entry = (ZipEntry)entries.nextElement();
        String filename = entry.getName();
        boolean ismkdir = false;
        if(filename.lastIndexOf("/") != -1){ //檢查此文件是否帶有文件夾
         ismkdir = true;
        }
        filename = savepath + filename;
        if(entry.isDirectory()){ //如果是文件夾先創(chuàng)建
         file = new File(filename);
         file.mkdirs();
          continue;
        }
        file = new File(filename);
        if(!file.exists()){ //如果是目錄先創(chuàng)建
         if(ismkdir){
         new File(filename.substring(0, filename.lastIndexOf("/"))).mkdirs(); //目錄先創(chuàng)建
         }
        }
        file.createNewFile(); //創(chuàng)建文件
        is = zipFile.getInputStream(entry);
        fos = new FileOutputStream(file);
        bos = new BufferedOutputStream(fos, buffer);
        while((count = is.read(buf)) > -1)
        {
          bos.write(buf, 0, count);
        }
        bos.flush();
        bos.close();
        fos.close();
        is.close();
      }
      zipFile.close();
    }catch(IOException ioe){
      ioe.printStackTrace();
    }finally{
       try{
       if(bos != null){
         bos.close();
       }
       if(fos != null) {
         fos.close();
       }
       if(is != null){
         is.close();
       }
       if(zipFile != null){
         zipFile.close();
       }
       }catch(Exception e) {
         e.printStackTrace();
       }
     }
   }
/*public static void main(String[] args)
  {
    unZip("F:\\110000002.zip");
    String f = "F:\\110000002";
    File file = new File(f);
    String[] test=file.list();
    for(int i=0;i<test.length;i++){
      System.out.println(test[i]);
    }
    System.out.println("------------------");
    String fileName = "";
    File[] tempList = file.listFiles();
    for (int i = 0; i < tempList.length; i++) {
      if (tempList[i].isFile()) {
        System.out.println("文   件:"+tempList[i]);
        fileName = tempList[i].getName();
        System.out.println("文件名:"+fileName);
      }
      if (tempList[i].isDirectory()) {
        System.out.println("文件夾:"+tempList[i]);
      }
    }
  } */
}

上面是第一種的代碼示例,接著是另外一種,代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import java.io.*;
import java.nio.charset.Charset;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
/**
 * Created by wzj on 2016/9/9.
 */
public class UZipFile
{
  /**
   * 解壓到指定目錄
   */
  public static void unZipFiles(String zipPath,String descDir)throws IOException
  {
    unZipFiles(new File(zipPath), descDir);
  }
  /**
   * 解壓文件到指定目錄
   */
  @SuppressWarnings("rawtypes")
  public static void unZipFiles(File zipFile,String descDir)throws IOException
  {
    File pathFile = new File(descDir);
    if(!pathFile.exists())
    {
      pathFile.mkdirs();
    }
    //解決zip文件中有中文目錄或者中文文件
    ZipFile zip = new ZipFile(zipFile, Charset.forName("GBK"));
    for(Enumeration entries = zip.entries(); entries.hasMoreElements();)
    {
      ZipEntry entry = (ZipEntry)entries.nextElement();
      String zipEntryName = entry.getName();
      InputStream in = zip.getInputStream(entry);
      String outPath = (descDir+zipEntryName).replaceAll("\\*", "/");;
      //判斷路徑是否存在,不存在則創(chuàng)建文件路徑
      File file = new File(outPath.substring(0, outPath.lastIndexOf('/')));
      if(!file.exists())
      {
        file.mkdirs();
      }
      //判斷文件全路徑是否為文件夾,如果是上面已經(jīng)上傳,不需要解壓
      if(new File(outPath).isDirectory())
      {
        continue;
      }
      //輸出文件路徑信息
      System.out.println(outPath);
      OutputStream out = new FileOutputStream(outPath);
      byte[] buf1 = new byte[1024];
      int len;
      while((len=in.read(buf1))>0)
      {
        out.write(buf1,0,len);
      }
      in.close();
      out.close();
    }
    System.out.println("******************解壓完畢********************");
  }
  public static void main(String[] args) throws IOException {
    /**
     * 解壓文件
     */
    File zipFile = new File("d:/資料.zip");
    String path = "d:/zipfile/";
    unZipFiles(zipFile, path);
  }
}

測試結果

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
d:/zipfile/資料/三大框架所有題.htm
d:/zipfile/資料/三大框架所有題_files/bootstrap.css
d:/zipfile/資料/三大框架所有題_files/bootstrap.js
d:/zipfile/資料/三大框架所有題_files/css_global.css
d:/zipfile/資料/三大框架所有題_files/jquery.js
d:/zipfile/資料/三大框架所有題_files/logo.png
d:/zipfile/資料/三大框架所有題_files/scripts(1).php
d:/zipfile/資料/三大框架所有題_files/scripts(2).php
d:/zipfile/資料/三大框架所有題_files/scripts.js
d:/zipfile/資料/三大框架所有題_files/scripts.php
d:/zipfile/資料/三大框架所有題_files/transparent.gif
d:/zipfile/資料/回顧.txt
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.classpath
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.mymetadata
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.project
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/.jsdtscope
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/com.genuitec.eclipse.j2eedt.core.prefs
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/org.eclipse.jdt.core.prefs
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/org.eclipse.wst.common.component
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/org.eclipse.wst.common.project.facet.core.xml
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/org.eclipse.wst.jsdt.ui.superType.container
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/.settings/org.eclipse.wst.jsdt.ui.superType.name
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/1.jsp
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/META-INF/MANIFEST.MF
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/classes/com/itheima/action/Demo1Action.class
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/classes/com/itheima/action/UserAction.class
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/classes/com/itheima/interceptors/Demo1Interceptor.class
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/classes/com/itheima/interceptors/LoginCheckInterceptor.class
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/classes/struts.xml
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/asm-3.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/asm-commons-3.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/asm-tree-3.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/commons-fileupload-1.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/commons-io-2.0.1.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/commons-lang3-3.1.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/commons-logging-1.1.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/freemarker-2.3.19.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/javassist-3.11.0.GA.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/log4j-1.2.17.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/ognl-3.0.6.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/struts2-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/lib/xwork-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/WEB-INF/web.xml
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/index.jsp
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/WebRoot/login.jsp
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/src/com/itheima/action/Demo1Action.java
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/src/com/itheima/action/UserAction.java
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/src/com/itheima/interceptors/Demo1Interceptor.java
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/src/com/itheima/interceptors/LoginCheckInterceptor.java
d:/zipfile/資料/源碼/day29_00_struts2Interceptor/src/struts.xml
d:/zipfile/資料/源碼/day29_01_struts2Upload/.classpath
d:/zipfile/資料/源碼/day29_01_struts2Upload/.mymetadata
d:/zipfile/資料/源碼/day29_01_struts2Upload/.project
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/.jsdtscope
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/com.genuitec.eclipse.j2eedt.core.prefs
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/org.eclipse.jdt.core.prefs
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/org.eclipse.wst.common.component
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/org.eclipse.wst.common.project.facet.core.xml
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/org.eclipse.wst.jsdt.ui.superType.container
d:/zipfile/資料/源碼/day29_01_struts2Upload/.settings/org.eclipse.wst.jsdt.ui.superType.name
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/1.jsp
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/2.jsp
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/META-INF/MANIFEST.MF
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/com/itheima/action/DownloadAction.class
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/com/itheima/action/Upload1Action.class
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/com/itheima/action/Upload1Action_zh_CN.properties
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/com/itheima/action/Upload2Action.class
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/struts.xml
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/classes/美女.jpg
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/asm-3.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/asm-commons-3.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/asm-tree-3.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/commons-fileupload-1.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/commons-io-2.0.1.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/commons-lang3-3.1.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/commons-logging-1.1.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/freemarker-2.3.19.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/javassist-3.11.0.GA.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/log4j-1.2.17.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/ognl-3.0.6.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/struts2-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/lib/xwork-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/WEB-INF/web.xml
d:/zipfile/資料/源碼/day29_01_struts2Upload/WebRoot/success.jsp
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/com/itheima/action/DownloadAction.java
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/com/itheima/action/Upload1Action.java
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/com/itheima/action/Upload1Action_zh_CN.properties
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/com/itheima/action/Upload2Action.java
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/struts.xml
d:/zipfile/資料/源碼/day29_01_struts2Upload/src/美女.jpg
d:/zipfile/資料/源碼/day29_02_struts2ognl/.classpath
d:/zipfile/資料/源碼/day29_02_struts2ognl/.mymetadata
d:/zipfile/資料/源碼/day29_02_struts2ognl/.project
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/.jsdtscope
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/com.genuitec.eclipse.j2eedt.core.prefs
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/org.eclipse.jdt.core.prefs
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/org.eclipse.wst.common.component
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/org.eclipse.wst.common.project.facet.core.xml
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/org.eclipse.wst.jsdt.ui.superType.container
d:/zipfile/資料/源碼/day29_02_struts2ognl/.settings/org.eclipse.wst.jsdt.ui.superType.name
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/1.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/2.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/3.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/4.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/5.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/6.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/7.jsp
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/META-INF/MANIFEST.MF
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/classes/com/itheima/action/Demo1Action.class
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/classes/com/itheima/action/Demo2Action.class
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/classes/com/itheima/action/Demo3Action.class
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/classes/com/itheima/domain/User.class
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/classes/struts.xml
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/asm-3.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/asm-commons-3.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/asm-tree-3.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/commons-fileupload-1.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/commons-io-2.0.1.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/commons-lang3-3.1.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/commons-logging-1.1.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/freemarker-2.3.19.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/javassist-3.11.0.GA.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/log4j-1.2.17.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/ognl-3.0.6.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/struts2-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/lib/xwork-core-2.3.15.3.jar
d:/zipfile/資料/源碼/day29_02_struts2ognl/WebRoot/WEB-INF/web.xml
d:/zipfile/資料/源碼/day29_02_struts2ognl/src/com/itheima/action/Demo1Action.java
d:/zipfile/資料/源碼/day29_02_struts2ognl/src/com/itheima/action/Demo2Action.java
d:/zipfile/資料/源碼/day29_02_struts2ognl/src/com/itheima/action/Demo3Action.java
d:/zipfile/資料/源碼/day29_02_struts2ognl/src/com/itheima/domain/User.java
d:/zipfile/資料/源碼/day29_02_struts2ognl/src/struts.xml
d:/zipfile/資料/課堂筆記.doc
******************解壓完畢********************

總結

以上就是Java解壓zip文件完整代碼分享的全部內(nèi)容,希望對大家有所幫助。有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對本站的支持!

原文鏈接:https://www.cnblogs.com/runerering/p/5959072.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本道色综合久久影院 | 国产成年人网站 | 亚州精品视频 | 87影院在线观看视频在线观看 | 91极品女神久色在线播放 | 亚洲AV蜜桃永久无码精品红樱桃 | 秋霞综合网 | 天堂成人影院 | 丁香网五月天 | 乌克兰肥熟 | 午夜香蕉成视频人网站高清版 | 希岛爱理aⅴ在线中文字幕 午夜综合网 | 波多野结在线 | 亚洲六月丁香六月婷婷蜜芽 | 国产白白视频在线观看2 | 调教催眠 | 99re在线视频观看 | 美女主播免费观看 | 男人与禽交的方法 | 扒开女人屁股眼看个够 | 男人狂躁女人下面狂叫图片 | 亚洲第一综合天堂另类专 | 三级伦理影院 | katsumi精品hd| 国语视频高清在线观看 | 欧美一级一级做性视频 | 性趣味商品推荐 | 韩国靠逼 | 美女扒开两腿露出尿口的视频 | 青青草国产精品久久久久 | 俄罗斯三级完整版在线观看 | 免费特黄一级欧美大片 | 性xxxxxxx18老师 | 99re热精品这里精品 | 四虎影视国产精品婷婷 | 三上悠亚精品专区久久 | 精品国产一区二区三区久久久蜜臀 | 精品国产福利一区二区在线 | 奇米狠狠色 | 欧美日韩国产亚洲一区二区 | 丰满在线观看 |