当前位置: 首页 > news >正文

动漫制作专业在国企河北网络营销推广seo

动漫制作专业在国企,河北网络营销推广seo,网络服务器销售商,简洁网站首页html代码文章目录 原始需求分析实施步骤引入依赖核心编码运行效果 原始需求 有网友提问#xff1a; 我想在程序中动态地向同一个jar包中添加文件#xff0c;比如#xff0c;我的可执行jar包是test.jar,我要在它运行时生成一些xml文件并将这些文件添加到test.jar中,请问如何实现 我想在程序中动态地向同一个jar包中添加文件比如我的可执行jar包是test.jar,我要在它运行时生成一些xml文件并将这些文件添加到test.jar中,请问如何实现 分析 test.jar在运行过程中是无法改变自身内容的但是可以创建内容与test.jar一致的test2.jar 问题就转换成了 如何复制已有的test.jar重命名为test2.jar如何继续向test2.jar添加新的文件 实施步骤 引入依赖 dependencygroupIdorg.apache.commons/groupIdartifactIdcommons-lang3/artifactIdversion3.12.0/version/dependencydependencygroupIdcommons-io/groupIdartifactIdcommons-io/artifactIdversion2.5/version/dependencydependencygroupIdorg.apache.commons/groupIdartifactIdcommons-compress/artifactIdversion1.23.0/version/dependency核心编码 借助 commons-compress 来操作Jar public void test()throws IOException{String src getClass().getResource(/apache-jstl.jar).getPath();String add1 getClass().getResource(/servlet-api.jar).getPath();String add2 getClass().getResource(/log4j2.xml).getPath();String newJar src.replace(.jar, DateFormatUtils.format(System.currentTimeMillis(), _HHmmssSSS) .jar);log.info(源文件: {}, src);log.info(新增: {}, add1);log.info(新增: {}, add2);log.info(新文件: {}, newJar);try (ArchiveOutputStream outputStream new JarArchiveOutputStream(new FileOutputStream(newJar));JarArchiveInputStream jarInput new JarArchiveInputStream(new FileInputStream(src))){JarArchiveEntry jarEntry;while ((jarEntry jarInput.getNextJarEntry()) ! null){if (!jarEntry.isDirectory()){outputStream.putArchiveEntry(jarEntry);IOUtils.copy(jarInput, outputStream);}}outputStream.flush();// 追加addFilesFile[] addFiles {new File(add1), new File(add2)};for (File addFile : addFiles){JarArchiveEntry addEntry new JarArchiveEntry(add/ addFile.getName());outputStream.putArchiveEntry(addEntry);try (InputStream entryInputStream new FileInputStream(addFile)){IOUtils.copy(entryInputStream, outputStream);}}// 追加add/001.txtJarArchiveEntry entry new JarArchiveEntry(add/001.txt);outputStream.putArchiveEntry(entry);outputStream.write(org.apache.commons.compress.archivers.jar.JarArchiveOutputStream;.getBytes(StandardCharsets.UTF_8));outputStream.closeArchiveEntry();outputStream.finish();}}使用JDK API实现 public void test2(){try{String src getClass().getResource(/apache-jstl.jar).getPath();String add1 getClass().getResource(/servlet-api.jar).getPath();String add2 getClass().getResource(/log4j2.xml).getPath();String newJar src.replace(.jar, DateFormatUtils.format(System.currentTimeMillis(), _HHmmssSSS) .jar);log.info(源文件: {}, src);log.info(新增: {}, add1);log.info(新增: {}, add2);log.info(新文件: {}, newJar);addFilesToJar(new File(src), newJar, new File(add1), new File(add2));}catch (IOException e){log.error(e.getMessage(), e);}}/*** JDK-API实现-将addFiles添加到srcJar并重命名为newJar* * param srcJar* param newJar* param addFiles* throws IOException*/private void addFilesToJar(File srcJar, String newJar, File... addFiles)throws IOException{try (JarOutputStream jarOutputStream new JarOutputStream(new FileOutputStream(newJar)); JarFile jarFile new JarFile(srcJar)){// 遍历jar文件数据写入新jarEnumerationJarEntry entrys jarFile.entries();while (entrys.hasMoreElements()){JarEntry jarEntry entrys.nextElement();if (!jarEntry.isDirectory()){jarOutputStream.putNextEntry(jarEntry);try (InputStream entryInputStream jarFile.getInputStream(jarEntry)){IOUtils.copy(entryInputStream, jarOutputStream);}}}// 追加写入for (File addFile : addFiles){JarEntry jarEntry new JarEntry(add/ addFile.getName());jarOutputStream.putNextEntry(jarEntry);try (InputStream entryInputStream new FileInputStream(addFile)){IOUtils.copy(entryInputStream, jarOutputStream);}}}}运行效果 原始文件 运行后 大功告成 有任何问题和建议都可以向我提问讨论,大家一起进步谢谢! -over-
http://www.pierceye.com/news/318030/

相关文章:

  • 潜江网站建设兼职万网人网站备案流程
  • 物流官网网站今天新闻联播
  • 郑州网站开发的公司三亚今天最新通知
  • 足球直播网站怎么做东莞市公司网站建设平台
  • 建设网站需要了解什么校园网站建设和管理工作制度
  • 网站商务通弹出窗口图片更换设置移动端cpu
  • 成都画册设计的公司海外seo托管
  • 中国早期互联网公司河南seo网站开发
  • wordpress添加短代码优化营商环境的金句
  • 网站访问统计js代码wordpress后台登陆不进去
  • dede 网站版权信息互联网平面设计
  • 可以做试卷的网站看书网站排名
  • seo网站关键词优化排名鄂州市网站
  • 哈尔滨网站域名归那里管网页版qq登录入口官网手机
  • 深圳建网站公司哪家好wordpress 采集系统
  • 网站发布与推广广州品牌网站设计公司
  • 帮忙做公司网站淘宝运营培训多少钱
  • 湘潭网站建设搭建WordPress多条件搜索
  • 信息技术 网站建设教案官网定制
  • 丽水专业网站建设公司淘宝美工培训推荐
  • 如何比较网站小程序商城开发平台
  • 品牌推广宣传词seo整站优化更能准确获得客户
  • 五八同城找工作招聘信息seo服务如何收费
  • 冒充it男给某网站做修复欧美专业牙科医院网站网页源码
  • 搭建网站需要做什么大型 视频网站开发
  • 济南招考院网站网站建设需要些什么东西
  • 手机怎么搭建网站厦门 做网站
  • 网站底部友情链接典型十大优秀网络营销案例
  • 公司装修工程免费推广软件平台seo博客
  • 树状结构的网站一个人可以做多少网站