压缩JS

java -jar yuicompressor-2.4.jar --type js xxx.js -o xxx.js --charset utf-8

压缩CSS

java -jar yuicompressor-2.4.jar --type css xxx.css -o xxx.css --charset utf-8

java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令。

(1) cmd /c dir 是执行完dir命令后关闭命令窗口。

(2) cmd /k dir 是执行完dir命令后不关闭命令窗口。

(3) cmd /c start dir 会打开一个新窗口后执行dir指令,原窗口会关闭。

(4) cmd /k start dir 会打开一个新窗口后执行dir指令,原窗口不会关闭。

PS:压缩CSS时,会影响JS和其他类型文件!!!

压缩JS时,无问题,建议压缩哪类文件时单放置哪类文件!!!

import java.io.BufferedReader;
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.io.InputStreamReader;

public class ZipJS {
	public static void main(String[] args) throws Exception {
		//文件存在目录
		String dir = "D:\\js";
		String[] fileNames = getFileNames(dir);
		System.out.println("The total number of files:"+fileNames.length);
		for (String string : fileNames) {
			if(string.equals("yuicompressor-2.4.jar")){
				continue ;
			}
			String cmd = "java -jar yuicompressor-2.4.jar --type js "+string+" -o "+string+" --charset utf-8";
			//String cmd = "java -jar yuicompressor-2.4.jar --type css "+string+" -o "+string+" --charset utf-8";
			Runtime.getRuntime().exec("cmd /c D: & cd "+dir+" & "+cmd);
		}
	}

	//获取当前文件夹下所有文件名称
	private static String[] getFileNames(String dir) {
		File file = new File(dir);
		File[] files = file.listFiles(new FileOnlyFilter());
		String[] ary = new String[files.length];
		for (int i = 0; i < files.length; i++) {
			ary[i] = files[i].getName();
		}
		return ary ;
	}
}

class FileOnlyFilter implements FileFilter {
	 public boolean accept(File file) {
		 return file.isFile();
	 }
}

压缩JS,提高代码执行速度的更多相关文章

  1. python可以提高程序执行速度N倍你知道吗?

    1.1.Numba的约5分钟指南 Numba是Python的即时编译器,它最适用于使用NumPy数组和函数以及循环的代码.使用Numba的最常用方法是通过其装饰器集合,可以应用于您的函数来指示Numb ...

  2. .Net中Task使用来提高代码执行效率

    技术不断更新迭代,更高效的执行效率越来越被重视,所以对Task的使用进行了简单使用做了整理与大家分享. .Net 中有了Task后使多线程编程更简单使用和操作,下面粘上代码进行简单说明: /// &l ...

  3. 前端程序员的蜕变——JS的 event 对象属性、使用实例、兼容性处理(极大提高代码效率、减少代码量)

    下面讨论一下 js 中的 Event 对象,主要从以下三个方面详细的描述(点击标题可跳转到对应部分): 1.什么是event 2.怎么用event,用他该注意什么,几个简单实际应用 3.event在不 ...

  4. gulp 压缩js,css

    最近做的前端项目中发现引用的js包太多,导致页面加载时反应很慢,所以首先想到的是将js和css压缩,提高加载速度. 我们先来看看抓到的当前页面响应时间: 页面异步加载,需要响应时间 7.41秒,这也太 ...

  5. JavaScript代码优化(下载时间和执行速度优化)

    JavaScript代码的速度被分成两部分:下载时间和执行速度. 下载时间 Web浏览器下载的是js源码,因此所有长变量名和注释都回包含在内.这个因素会增加下载时间.1160是一个TCP-IP包中的字 ...

  6. C语言提高代码效率的几种方法

    一段完美的代码不仅在于找到一个给定的问题的解决方案,但在它的简单性,有效性,紧凑性和效率(内存).设计的代码比实际执行更难.因此,每一个程序员当用C语言开发时,都应该保持这些基本的东西在头脑中.本文向 ...

  7. js实现网页图片延时加载的原理和代码 提高网站打开速度

    有时我们看到一些大型网站,页面如果有很多图片的时候,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载,一定程序上加快了页面加载的速度,对 ...

  8. 自写脚本实现上线前本地批量压缩混淆 js , css 代码。

    最近做项目遇到一个要求,就是把本地的 js 和 css 进行压缩后再上线,由于之前项目并没有使用 webpack 之类的库,项目上也因为一些机密不能在线上压缩,这无疑给代码打包压缩带来了很大麻烦,于是 ...

  9. gulp 压缩 js 和 css 代码

    我们在写出来的代码都是非常规范的,改换行的时候就换行,改tab 的时候就有tab,还有这样做是为了后期维护方便,但是这也导致了内存占用量的增大,当把把代码发到线上,如果网速慢一点,可能很久都加载不出来 ...

随机推荐

  1. node第一个程序

    var http = require('http') var url = require('url') var fs=require("fs") var router = requ ...

  2. sql 中 in 与 exist 的区别

    可以 通过 where 条件 把 null的情况 筛选掉,已避免出现上述的情况. 1, exist 返回 true or  false:  in 返回  true  unknow. not之后 not ...

  3. 【Head First Servlets and JSP】笔记 25:JSTL 参考

    <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ t ...

  4. 仿京东Tab商品切换

    在线演示 本地下载

  5. C++ vector 多次删除第一个元素

    转载声明: 代码都是来源于一下连接,做了一点点修改,为了记忆方便,故贴在这里,原文链接:http://blog.csdn.net/doctor_feng/article/details/1188078 ...

  6. SQL查询以某个字母开头

    select * from a where left(a.name, 1)='H'; 或 select * from a where a.name REGEXP ''^(B|S)'';

  7. Hibernate的一级缓存、二级缓存和查询缓存。

    Hibernate的Session提供了一级缓存的功能,默认总是有效的,当应用程序保存持久化实体.修改持久化实体时,Session并不会立即把这种改变提交到数据库,而是缓存在当前的Session中,除 ...

  8. 线段树 - HDU1166 - 敌兵布阵

    2017-07-29 16:41:00 writer:pprp 线段树跟区间操作相关,想要在题目限定的时间内解决问题就需要用线段树这种数据结构来解决: 线段树是一种二叉平衡树 参考书目:张新华的< ...

  9. linux下fifo,mq,shm

    最近想为系统添加一个统计脚本,但是系统内的模块是有perl和java两种语言编写,且模块是通过crontab定时调用的,所以需要使用IPC传输信息. 第一个想到的是socket方式,感觉需要统一设定一 ...

  10. 关于分析web.xml的一篇博客,写的很详细

    http://blog.csdn.net/believejava/article/details/43229361