前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >把一个txt文件转化为带标题栏的Excel文档

把一个txt文件转化为带标题栏的Excel文档

作者头像
用户5166556
发布2019-04-16 12:06:21
6860
发布2019-04-16 12:06:21
举报
文章被收录于专栏:让技术和时代并行
代码语言:javascript
复制
public class Export {
	public static final String CSVNAME_COMPETITION="cpc.csv";
}
代码语言:javascript
复制
public class CSV {
	public static final String ENDLINE = "\n";
	public static final Map<String,String> HEADLINES=new HashMap<String,String>();
	
	static{
	//分别是Excel文档的第一行标题内容
		HEADLINES.put(Export.CSVNAME_COMPETITION, formatToCSV("1","2","3","4","5"));
	}
	
	public static String formatToCSV(Object...params){
		StringBuilder sb=new StringBuilder("\""+params[0]+"\"");
		
		for(int i=1;i<params.length;i++)
		{
			sb.append(",");
			if(params[i] instanceof Double && ((Double)params[i]).isInfinite())
			{
				sb.append("\"0.0\"");
			}else{
				sb.append("\""+params[i]+"\"");
			}
		}
		sb.append(ENDLINE);
		return sb.toString();
	}
	
	public static String getHeadLine(String fileName)
	{
		return HEADLINES.get(fileName);
	}
}
代码语言:javascript
复制
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class OutPut {
	public static BufferedWriter getWriter(String name,String path){
		BufferedWriter  br = null;
		try {
			mkdirs(path);
			File file = new File(path+"/"+ name);
			br = new BufferedWriter(new FileWriter(file));
			//if(!file.exists()){
			//这里要注意下,通常我们再把txt转化问Excel,由于编码格式的原因,一定要添加上下面这一行,而且只能添加在开头。
				br.write(new String(new byte[] { (byte) 0xEF, (byte) 0xBB,(byte) 0xBF }));   
			//}
			br.write(new String(CSV.getHeadLine(name).getBytes("utf-8")));
			br.flush();
			//br.close();
		} catch (IOException e) {
			e.printStackTrace(); 
		}
		return br;
	}
	
	public static void mkdirs(String path)
	{
		File f=new File(path);
		if(!f.isDirectory())
			f.delete();
		if(!f.exists())
			f.mkdirs();
	}
}
代码语言:javascript
复制
@Test
	public void excel() throws IOException{
		Writer writer = OutPut.getWriter(Export.CSVNAME_COMPETITION, "E:/testexcel");
		writer.write(CSV.formatToCSV("对手","数量","广告","关键"));
		writer.close();
	}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014年10月20日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档