页面导出txt文件

引言

            做过页面导出excel,那么页面导出txt文件能不能借鉴一番哪?答案是肯定的。

概述

            页面导出txt文件与导出excel类似,都属于流操作的一种,废话不多说看下面实例

内容

           实现思路:将取到的数据拼接成字符串,写到新建的txt文件中。

public File writeToTxt(String fileName,List<FpSpbm> listFpSpBm) {
		//(1)拼接txt头内容
		StringBuffer head = new StringBuffer();
		head = head.append("{商品编码}[分隔符]\"~~\"")
				.append("\r\n")
				.append("// 每行格式 :")
				.append("\r\n")
				.append("// 编码~~名称~~简码~~商品税目~~税率~~规格型号~~计量单位~~单价~~含税价标志~~隐藏标志~~中外合作油气田~~税收分类编码~~是否享受优惠政策~~税收分类编码名称~~优惠政策类型~~零税率标识~~编码版本号")
				.append("\r\n");
		//(2)拼接txt文件字符串内容
		StringBuffer content = new StringBuffer();
		for(int i =0;i<listFpSpBm.size();i++) {
			content = content.append(listFpSpBm.get(i).getBm())
					.append("~~")
					.append(listFpSpBm.get(i).getMc())
					.append("~~")
					.append(listFpSpBm.get(i).getJm())
					.append("~~")
					.append(listFpSpBm.get(i).getSpsm())
					//.append("")
					.append("~~")
					.append(listFpSpBm.get(i).getSl())
					.append("~~")
					.append(listFpSpBm.get(i).getGgxh())
					.append("~~")
					.append(listFpSpBm.get(i).getJldw())
					.append("~~")
					.append(new BigDecimal(listFpSpBm.get(i).getDj().toString()))
					.append("~~")
					.append(listFpSpBm.get(i).getHsjbz())
					.append("~~")
					.append(listFpSpBm.get(i).getQybz())
					.append("~~")
					.append("")
					.append("~~")
					.append(listFpSpBm.get(i).getSsflbm())
					.append("~~")
					.append(listFpSpBm.get(i).getSyyh())
					.append("~~")
					.append(listFpSpBm.get(i).getSsflmc())
					.append("~~")
					.append(listFpSpBm.get(i).getYhzclx())
					.append("~~")
					.append("")
					.append("~~")
					.append("")
					.append("\r\n");			
		}
		//(3)拼接txt全部文本
		StringBuffer txtContent = new StringBuffer();
		txtContent = txtContent.append(head)
				.append(content);
		//(4)写入txt文件中
		File file =  new File(filepath + fileName);
		try {
                       PrintStream ps = new PrintStream(new FileOutputStream(file));
                       ps.println(txtContent);// 往文件里写入字符串
                } catch (FileNotFoundException e) {	    
                     e.printStackTrace();
              
		     return file;
	        }

总结

             页面导出txt较导出excel更简单,少了表头等的设置。java的流操作是我们必备的知识,多积累多成长。


版权声明:本文为u013045868原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。