//一个jar包可以包含多个entry,这样就能实现下面功能

1.I/O       读文件流步骤 

               File file=new File(filePath);

               InputStreamReader read = new InputStreamReader(new FileInputStream(file));

               BufferedReader bufferedReader = new BufferedReader(read);

               String lineTxt = bufferedReader.readLine()      

package PlayJar;

/**

 * 读取txt文件里的路径文件

 * @author gjf

 */

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.InputStreamReader;

import java.util.ArrayList;

import java.util.List;

public class ReadFile{

    public static List<String> readTxtFile(){

                String filePath = "E:/Jar/prpall.txt";

                List<String> list = new ArrayList<String>();

                try {

                     File file=new File(filePath);

                     if(file.isFile() && file.exists()){             //判断文件是否存在

                       InputStreamReader read = new InputStreamReader(new FileInputStream(file));

                       BufferedReader bufferedReader = new BufferedReader(read);

                       String lineTxt = null;

                       while((lineTxt = bufferedReader.readLine()) != null){

                          list.add("E:/运维域/基线域04-B/prpall/modules/webapps/"+lineTxt);

                       }

                            System.out.println("list"+list);

                            read.close();

                }else{

                    System.out.println("找不到指定的文件");

                }

                }catch(Exception e) {

                    System.out.println("读取文件内容出错");

                    e.printStackTrace();

                }

                return list;

    }

}

package PlayJar;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.util.jar.JarEntry;

import java.util.jar.JarOutputStream;

/**

 * 把单个txt里的路径文件打包

 * @author pc

 */

public class PJar {

     public static void main(String[] args) throws IOException {

          FileInputStream fis = null;

          JarOutputStream jos = null;

          jos = new JarOutputStream(new FileOutputStream("E:/Jar/ppp.jar"));

          for (String s : ReadFile.readTxtFile()) {

              File file = new File(s);// 文件地址

              fis = new FileInputStream(file);

              // 创建压缩文件中的条目,subString是为了截距掉前面的路径

              JarEntry enttry = new JarEntry(file.getPath().substring(38));

              System.out.println("创建压缩文件中的条目 :" + enttry);

              // 将创建好的条目加入到压缩文件中

              jos.putNextEntry(enttry);

              // 写入当前条目所对应的具体内容

              byte[] buff = new byte[1024];

              int len = 0;

              while ((len = fis.read(buff)) != -1) {

                   jos.write(buff, 0, len);

              }

          }

          fis.close();

          jos.close();

     }

}

Java打war包or打jar包的更多相关文章

  1. eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN

    eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...

  2. 用命令行编译java并生成可执行的jar包

    用命令行编译java并生成可执行的jar包 1.编写源代码. 编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java.程序结构如下: ...

  3. java中使用URLClassLoader访问外部jar包的java类

    很多时候 我们写的Java程序是分模块的,有很好的扩展机制,即我们可以为我们自己的java类添加插件,来运行将来某天我们可能开发出来的类,以下称这些类为插件类. 下边是一种简单的实现方法: Class ...

  4. (转)IntelliJ IDEA java项目导入jar包,打jar包

    以下为转载原文:https://www.cnblogs.com/yulia/p/6824058.html 一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File ->   ...

  5. Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参

    Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参 一.打包 情况1:不需要向程序传参数,并且程序没有使用第三方jar包 Eclipse上导出jar: 然后选择一个java文件作为入 ...

  6. IntelliJ IDEA java项目导入jar包,打jar包

    一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File ->  Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Proje ...

  7. 转!java web项目 build path 导入jar包,tomcat启动报错 找不到该类

    在eclipse集成tomcat开发java web项目时,引入的外部jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环 ...

  8. java全栈day13----Eclipse项目的jar包导出与使用jar包

    01eclipse快捷键 Ctrl+T:查看所选中类的继承树 例如,在下面代码中,选中Teacher类名,然后按Ctrl+T,就会显示出Teacher类的继承关系 * B: 查看所选中方法的源代码 ...

  9. 不要轻易在java ext 目录放任何三方jar包

    今天在编写一个简单spi 应用demo的时候,在编译时总有一个其他的错误,如下: ERROR Failed to execute goal org.apache.maven.plugins:maven ...

  10. java打jar包和运行jar包的两种方式

    java打jar包和运行jar包的两种方式更详细的打包方式请参考https://www.cnblogs.com/mq0036/p/8566427.html 一.java类不依赖第三方jar包以简单的一 ...

随机推荐

  1. 【leetcode】948. Bag of Tokens

    题目如下: You have an initial power P, an initial score of 0 points, and a bag of tokens. Each token can ...

  2. openwrt 编译支持sqlite3

    编译版本加载lib库 ------------------------------Libraries----------------------------------- Filesystem  -- ...

  3. Django基础--Django基本命令、路由配置系统(URLconf)、编写视图、Template、数据库与ORM

    web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构. 使用框架可以帮你快速开发特定的系统. 简单地说,就是你用别人搭建好的舞台来做表演. 尝试搭建一个简单 ...

  4. 2019 TCO Round 1B——[ 状压DP ]

    第一题是 EllysSki . 题意:给n个数,求两个方向的最长递减区间. 可以O(n). #include<cstdio> #include<cstring> #includ ...

  5. Comet OJ 三元组 推导+两个指针+分类讨论

    题目:https://www.cometoj.com/contest/59/problem/F?problem_id=2681 题意:给你n个三元组 ai,bi,ci,如果某一对三元组满足    2* ...

  6. MySql插入数据成功但是报[Err] 1055

    1.问题: 这两天做insert操作,mysql版本是5.7,insert后虽然成功了,但是会报一个[Err] 1055的错误.具体如下: 2.解决方案: linux环境下,vim到my.cnf,添加 ...

  7. SQL必知必会——创建和操纵表(十七)

    1.创建表 一般有两种创建表的方法: 多数DBMS都具有交互式创建和管理数据库表的工具表也可以直接用SQL语句操纵1.1.表创建基础 CREATE TABLE products( prod_id,CH ...

  8. 8086汇编和Win32汇编

    8086汇编是指在某环境下汇编编译产生的程序,用机器去执行每条指令的长度为16位(可小于16),如DOS操作系统:WIN32汇编是32位环境下的汇编,如Windows(Windows也有64位的,XP ...

  9. Android 架构师技能图谱

    # Android 架构师技能图谱 ## 架构与设计 - 设计模式 - 重构 - 技术选型 - 特性 - 可用性 - 性能 - 包大小 - 方法数 - 文档 - 技术支持 - UI架构模式 - MVC ...

  10. Webx.0-Web3.0:Web3.0

    ylbtech-Webx.0-Web3.0:Web3.0 Web3.0只是由业内人员制造出来的概念词语,最常见的解释是,网站内的信息可以直接和其他网站相关信息进行交互,能通过第三方信息平台同时对多家网 ...