将文件夹下所有html文件转换成jsp文件

在开发过程中, 有时候需要将.html文件变成.jsp文件,并添加utf-8字符集,一个一个手动去改往往比较浪费时间,所以写了个工具类
具体代码如下:
package com.jym.util;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class JymFileUtil {
	

	/**
	 * @throws IOException 
	 * @Title: change2jsp
	 * @Description: 递归遍历文件夹所有文件,文件夹下所有html文件转换成jsp
	 * @param : file
	 * @return: void 
	 * @author: jym 
	 * @date: 2019年12月12日 上午11:44:23 
	 * @throws
	 */
	public static void change2jsp(File file) throws IOException {
		File[] files = file.listFiles();
		for (File a : files) {
			if (a.isDirectory()) {
				change2jsp(a);
			}
			html2jsp(a);
		}
	}

	
	
	/**
	 * 
	 * @Title:         html2jsp   
	 * @Description:   将html文件转换成jsp文件,并转换成utf-8字符集  
	 * @param:         @param file      
	 * @return:        void   
	 * @author:        jym  
	 * @date:          2019年12月12日 下午1:21:06   
	 * @throws
	 */
	private static void html2jsp(File file) throws IOException{
		String name = file.getName(); 
		
		//获取文件名,文件名以html结尾的进入if分支
		if (name.endsWith(".html")) {  
			//在相同的目录下创建一个文件名相同的jsp文件
			File tempFile = new File(file.getAbsolutePath().replace(".html", ".jsp"));
			
			//copy文件  将html文件内容copy到jsp中
			InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");
			FileOutputStream outFile = new FileOutputStream(tempFile);
			OutputStreamWriter ow = new OutputStreamWriter(outFile, "UTF-8");
			
			//添加utf-8字符集
			String s = "<%@page pageEncoding=\"UTF-8\" contentType=\"text/html; charset=UTF-8\" %>\r\n";
			ow.write(s, 0, s.length());

			//copy内容
			char[] buffer = new char[1024];
			int i = 0;
			while ((i = isr.read(buffer)) != -1) {
				ow.write(buffer, 0, i);
			}
			
			//关闭流
			ow.close();
			isr.close();
			outFile.close();
			
			// 复制完成删除htnl文件
			file.delete();
		}
	}
	

}

世界上有10种人,一种是懂二进制的,一种是不懂二进制的。
感谢您的收看,如有哪里写的不对 请留言,谢谢。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值