精华内容
下载资源
问答
  • /* * 在进行压缩流操作时建议使用开源的类库org.apache.tools.zip.*, * 不要用java.util.zip.*类库,这个在实现上没有前面那个做的完善。 */import java.io.File;import java.io.FileInputStream;import java.io...
    package test.downloadzip;
    


    /* 
     * 在进行压缩流操作时建议使用开源的类库org.apache.tools.zip.*, 
     * 不要用java.util.zip.*类库,这个在实现上没有前面那个做的完善。 
     */


    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.TreeSet;
    import java.util.zip.ZipEntry;
    import java.util.zip.ZipOutputStream;


    public class ZipDemo {


    public static TreeSet<String> ts = new TreeSet<String>();


    public static void main(String[] args) throws IOException {
    // 需要压缩的目录
    File sFolder = new File("D:\\leo\\file\\pic");

    // 压缩之后的目录,如果是网络下载情况可以将流写入response就好了
    File zipFolder = new File("d:\\zipDown\\test.zip");


    ZipFolderMethod(sFolder, zipFolder);


    System.out.println("导出成功");


    }


    public static void ZipFolderMethod(File sFoder, File zipFolder) throws IOException {
    // TODO Auto-generated method stub


    ZipOutputStream zipoutFolder = new ZipOutputStream(new FileOutputStream(zipFolder));


    InputStream in = null;


    // zipoutFolder.setEncoding("GBK"); //为解决注释乱码
    zipoutFolder.setComment("文件夹的压缩");


    // 列出所有文件的路径,保存到集合中,在ListAllDirectory(sFoder)方法中用到递归
    TreeSet<String> pathTreeSet = ListAllDirectory(sFoder);


    String[] pathStr = pathTreeSet.toString().substring(1, pathTreeSet.toString().length() - 1).split(",");


    for (int i = 0; i < pathStr.length; i++) {
    String filePath = pathStr[i].trim();
    StringBuffer pathURL = new StringBuffer();
    String[] tempStr = filePath.split("\\\\"); // 这个地方需要注意,在Java中需要“\\\\”表示“\”字符串。


    // 这里的变量j是从第几层开始打压缩包
    for (int j = 6; j < tempStr.length - 1; j++) {
    pathURL.append(tempStr[j] + File.separator);
    }
    String path = pathURL.append(tempStr[tempStr.length - 1]).toString();


    in = new FileInputStream(new File(filePath));


    zipoutFolder.putNextEntry(new ZipEntry(path));


    int temp = 0;
    while ((temp = in.read()) != -1) {
    zipoutFolder.write(temp);
    }


    in.close();
    }
    zipoutFolder.close();
    }


    public static TreeSet<String> ListAllDirectory(File sFolder) {
    if (sFolder != null) {
    if (sFolder.isDirectory()) {
    File f[] = sFolder.listFiles();
    if (f != null) {
    for (int i = 0; i < f.length; i++) {
    ListAllDirectory(f[i]);
    }
    }
    } else {
    ts.add(sFolder.toString());
    }
    }
    return ts;
    }
    }
    展开全文
  • kettle动态设置输入文件路径

    千次阅读 2015-06-27 10:18:34
    这样就要kettle导入的文件路径是个变量。最好定义到数据库中。 我的这个例子就是从数据库读取文件路径,文本文件的路径使用变量: 下边是一些截图。代码可以下载 [list] (1) [img]...
    一般生产环境的导入文件的路径都是动态的,比如根据日期,每天生成一个文件夹。这样就要kettle导入的文件路径是个变量。最好定义到数据库中。
    
    我的这个例子就是从数据库读取文件路径,文本文件的路径使用变量:
    下边是一些截图。代码可以下载
    [list]
    (1)
    [img]http://dl2.iteye.com/upload/attachment/0109/7935/444da46b-f059-3858-bb44-1ff07954129b.png[/img]

    (2)
    [img]http://dl2.iteye.com/upload/attachment/0109/7937/c060a690-4df2-34d1-afe7-c3a96e48cc7c.png[/img]

    (3)
    [img]http://dl2.iteye.com/upload/attachment/0109/7941/ee0d9025-a535-364d-900e-5876cc14000d.png[/img]

    [/list]
    展开全文
  • 使用zipfile来压缩文件的时候,发现一个问题,在写入压缩文件时,会带入文件的路径 代码如下: import zipfile z = zipfile.ZipFile('123.zip', 'w', zipfile.ZIP_DEFLATED) z.write("D:\\PycharmProjects\\allen...

    使用zipfile来压缩文件的时候,发现一个问题,在写入压缩文件时,会带入文件的路径

    代码如下:

    import zipfile
    z = zipfile.ZipFile('123.zip', 'w', zipfile.ZIP_DEFLATED)
    z.write("D:\\PycharmProjects\\allen02\\1206\\123.txt")
    z.close()

    打开123.zip发现会带有文件夹路径(PycharmProjects\allen02\1206\):

    不想带这个文件夹路径,上网搜了好多帖子,试验了很多方法都不行。

    无奈之下打开zip.write源码看了下:

    发现有一个arcname参数,默认是None,再看下面是在from_file方法中有定义,再打开from_file方法查看

    发现这是一个类方法,在这里有arcname的解释,翻译过来就是:

    arcname是它将在归档文件中使用的名称(默认情况下,它将与文件名相同,但是没有驱动器号,并且删除了前导路径分隔符)。

    看到这里,这不就是我要的文件名吗,赶紧试试看,代码如下:

    import zipfile
    z = zipfile.ZipFile('123.zip', 'w', zipfile.ZIP_DEFLATED)
    z.write(filename="D:\\PycharmProjects\\allen02\\1206\\123.txt", arcname="123.txt")
    z.close()

    再次查看zip文件:

     

    问题解决,后续就可以将多个文件压缩后放到一个zip中,并且没有路径了。

    展开全文
  • Python代码如下: archival_name = ...其中save_path为文件路径,因为在当前目录下,所以相对路径'.'来表示,获取相对路径函数: os.path.relpath(path[, start]) #从start开始计算相对路径 可参考: ...

    Python代码如下:

     archival_name = "test.tar"
     # 创建压缩包名
     tar = tarfile.open(save_path + archival_name, "w:tar")
     # 创建压缩包
     tar.add(os.path.join(save_path, "a.txt"), arcname=os.path.join('.',"a.txt"))
     tar.close()

    其中save_path为文件路径,因为在当前目录下,所以相对路径'.'来表示,获取相对路径函数:

    os.path.relpath(path[, start])  #从start开始计算相对路径

    可参考:http://blog.csdn.net/lixingdefengzi/article/details/52164765

    展开全文
  • tar -C 文件路径 压缩文件名 待压缩文件1 待压缩文件2 这样压缩就没有文件夹路径。同样zip压缩不带路径的方式为 zip -pj 压缩文件名 带压缩文件 2、关于tar和zip压缩的问题 tar的z参数压缩,是支持zip...
  • gulp从头到尾实现压缩,合并,加版本号以及部分问题解决(初版)(mac) 1- 我的文件结构如下: 2- gulpfile.js 文件配置如下: var gulp = require('gulp'), rev = require('gulp-rev'), // 给静态资源文件名添加...
  • Python解压zip压缩包到指定文件路径

    千次阅读 2021-05-01 11:15:05
    Python解压zip压缩包到指定文件路径,给大家介绍zipfile库的简单使用 ZIP文件格式是一种常见的归档和压缩标准。这个模块提供了创建、读取、写入、追加和列出ZIP文件的工具。 import zipfile import os """ src_...
  • Java多文件压缩下载解决方案

    万次阅读 2018-09-07 18:00:33
    会员运营平台经过改版后页面增加了许多全部下载链接,上周上线比较仓促,全部下载是一个直接下载ZIP压缩文件的链接,每个ZIP压缩文件都是由公司运营人员将页面需要下载的文件全部压缩成一个ZIP压缩文件,然后通过...
  • 在terminal输入下面命令后 zip dick.zip /home/ubantu...使用下面这条命令便可以压缩我们当前目录下的所有文件。 zip -r a.zip ./* -r表示递归.如果没有-r,jack文件夹下的文件会没被压缩(0字节)zip c.zip ./*: ...
  • Mac压缩文件命令

    千次阅读 2018-10-22 09:51:49
    我们知道在Mac中如果右键直接压缩文件会出现许多其他文件,当我们比赛提交压缩文件时会很头痛。 所以我们要用Mac压缩命令。...-o:表示设置所有被压缩文件的最后修改时间为当前压缩时间 一般,操作就...
  • Java实现zip文件压缩与解压缩--附完整代码

    万次阅读 多人点赞 2019-07-26 14:54:09
    Java实现文件压缩与解压缩-----zip、.7z1. 基本概念1.1 Java中实现zip的压缩与解压缩1.1.1 基本概念1.1.2 zip压缩代码实现1.3 zip压缩代码改进 1. 基本概念 1.1 Java中实现zip的压缩与解压缩 1.1.1 基本概念 ...
  • java压缩文件到指定位置

    千次阅读 2019-12-06 15:03:56
    //构建压缩文件File File zipFile = new File(zipFileName); //初期化ZIP流 ZipOutputStream out = null; try { //构建ZIP流对象 out = new ZipOutputStream(new FileOutputStream(zipFile)); //循环处理传...
  • Java 多文件加密压缩 添加文件加密压缩工具包依赖 <!-- zip4j压缩工具 --> <dependency> <groupId>net.lingala.zip4j</groupId> <artifactId>zip4j</artifactId> <...
  • 目录 问题描述: 解决方法: tar -zxvf 要解压的文件名 -C 要解压到哪个路径下 ...-C 目录:这个选项用在解压缩,在特定目录解压缩可以使用这个选项(注意,这里的 C 一定要大写) 例如:我想把answ...
  • 哈夫曼实现文件压缩压缩(c语言)

    万次阅读 多人点赞 2019-01-23 17:04:47
    写一个对文件进行压缩和解压缩的程序,功能如下: ① 可以对纯英文文档实现压缩和解压; ② 较好的界面程序运行的说明。 介绍哈夫曼: 效率最高的判别树即为哈夫曼树 在计算机数据处理中,霍夫曼编码...
  • java实现在服务器端压缩文件

    千次阅读 2018-03-09 16:19:43
    "源文件路径为空或者压缩文件路径为空或者压缩文件名为空" ); return flag; } File sourceFile = new File(sourceFilePath); if (!sourceFile.exists()){ logger.error( "源文件路径不存在" ); return ...
  • package com.github.elizabetht.controller; import java.io.*; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; public class Zip ... private static void zipDirectory(ZipOutputStre
  • 7zip 压缩 压缩路径的问题

    千次阅读 2015-06-03 08:50:59
    //这是待压缩文件 这个文件是当前目前下面的一个Debug文件夹下的txt文件 //只有这样写,压缩后的文件*.7z中才会只有Debug这个目录 //如果UString name = L"D:\\Debug\\123.txt"; 是个绝对路径,那么*.7z中也是一...
  • Ubuntu解压缩zip文件到指定路径

    千次阅读 2020-08-21 10:24:59
    如果unzip命令还没有安装,就在终端输入 ...如果想要将文件压缩到特定路径,使用(-d指定目标路径) unzip file.zip -d destination_folder 如果源目录和目标目录是相同的,则使用 unzip file.zip ...
  • Unity文件操作路径

    万次阅读 多人点赞 2016-06-15 11:07:04
    Application.dataPath Application.streamingAssetsPath Application.persistentDataPath ...在个平台下的具体路径如下: Application.dataPath Application.streamingAssetsPath A...
  • tar打包绝对路径文件

    千次阅读 2018-03-13 11:54:15
    当使用tar打包绝对路径文件时会警告:tar: Removing leading `/' from member names[user_00@CoalaaHK1 ~]$ tar -zcvf test2.tar.gz /home/user_00/wade/test tar: Removing leading `/' from member names /home/...
  • 比如你想打包/home这个目录,但是/home/afish/目录和/home/www/afish.php文件你都不想打包,方法是: tar -zcvf home.tar.gz /home --exclude=/home/afish --exclude=/home/www/afish.php 2.命令格式如下: ...
  • 使用Java以zip形式批量下载文件、压缩文件

    万次阅读 多人点赞 2020-07-19 21:22:25
    这篇博客详细介绍了在Java中以zip形式批量下载文件,博客中有完整的代码实现。
  • 一、C#实现解压文件(对文件。文件夹zip压缩,解压) 首先C#进行文件解压,压缩需要引入这个几个命名空间 1:
  • FileUtil.copyFile 这个方法是复制文件的?我想把怎个ZIP包复制到指定路径要怎么做?
  • 然后给大家看下 zip 文件的压缩过程,我的压缩方法可以直接压缩文件在当前目录下,并不把自己压缩进来,而且可以保留原来文件夹的目录结构。 这里用list()做一个克隆提前执行下,不然会在后面循环时才执行这一引用,...
  • WinRAR压缩文件参数详解

    千次阅读 2017-02-10 18:14:14
    将D:/wk.doc 压缩为:final.rar  d:/winrar/rar a d:/final.rar d:/wk.doc  将final.rar中的wk.doc解压到F:盘  rar e d:/final.rar F:  将final.rar转换成自解压文件  rar s final,rar(默认转换到...
  • java Gzip方式 解压,压缩文件Utils

    千次阅读 2016-10-08 16:27:05
    * 需要解压的文件路径(包含文件名称) * @param delete * 是否删除原始文件(true:删除;false:保留) * @param outPath * 解压后文件的输出路径,如果该参数的值为 null,则输出解压文件到当前文件夹 ...
  • 六、Linux中的压缩文件和解压命令

    千次阅读 2018-07-15 20:44:24
    6-1zip压缩命令程序使用 zip 打包文件夹:$ cd /home/shiyanlou $ zip -r -q -o shiyanlou.zip /home/shiyanlou/Desktop $ du -h shiyanlou.zip $ file shiyanlou.zip 上面命令将目录 /home/shiyanlou/Desktop 打包...
  • 如何生成压缩文件文件(zip)

    千次阅读 2017-09-07 09:33:42
    在做项目的过程中需要将文件打成压缩包 供用户下载使用,所以借鉴了网上的部分代码,经过自己的整理已进行了应用,代码如下: package com.zzxb.zip; import java.io.BufferedInputStream; import java.io....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 409,412
精华内容 163,764
关键字:

如何设置压缩文件的路径