数据导入导出

[size=medium][color=darkred]导出Txt范例,其他格式(Word,Excel,Pdf)导出请看附件[/color][/size]

/**
* 导出Txt文件
*
* @author Sehoney
* @param path
* @param result_col
* @return
* @throws Exception
*/
private Boolean exportTxt(String path, Collection result_col)
throws Exception {
// 查找文件,假如不存在,就创建
File file = new File(path + ".txt");

if (!file.exists()) {
file.createNewFile();
}

PrintWriter out = null;
out = new PrintWriter(new BufferedWriter(new FileWriter(path + ".txt")));
// 将数据写入文件
StringBuffer content = new StringBuffer();

content.append(strbufCopy(" ", 40));
content.append("Sehoney通讯录档设定\n");
content.append(strbufCopy("工号", 12));
content.append(strbufCopy("姓名", 12));
content.append(strbufCopy("英文名", 22));
content.append(strbufCopy("分机", 7));
content.append(strbufCopy("部门别", 22));
content.append(strbufCopy("职位", 42));
content.append(strbufCopy("手机号", 18));
content.append(strbufCopy("电话号码", 18));
content.append(strbufCopy("公司E-mail", 62));
content.append(strbufCopy("MSN号码", 62));
content.append("人生格言\n");

SopmcontactsVW vw = new SopmcontactsVW();
int[] selectedRow_i = queryPage.data_jCmpTable.table_jTbl
.getSelectedRows();

ArrayList result_list = (ArrayList) result_col;
// 数据不为空的时候导出数据
if (!"".equals(selectedRow_i) && selectedRow_i.length > 0) {
for (int i = 2; i < selectedRow_i.length + 2; i++) {
// 获得选中行
queryPage.data_jCmpTable.table_jTbl.setRowSelectionInterval(
selectedRow_i[i - 2], selectedRow_i[i - 2]);
SopTableHelper.selectedRow2VO(vw,
queryPage.data_jCmpTable.table_jTbl);
content.append(strbufCopy(vw.getJobno(), 12));
content.append(strbufCopy(vw.getName(), 12));
content.append(strbufCopy(vw.getEname(), 22));
content.append(strbufCopy(vw.getExt(), 7));
content.append(strbufCopy(vw.getBranchdesc(), 22));
content.append(strbufCopy(vw.getPost(), 42));
content.append(strbufCopy(vw.getPhone(), 18));
content.append(strbufCopy(vw.getTelno(), 18));
content.append(strbufCopy(vw.getEmail(), 62));
content.append(strbufCopy(vw.getMsn(), 62));
content.append(vw.getMotto()+ "\n");
}
MessageController.showManualMessage(MessageDisplayTypeEnum.BOTH,
MessageDialogTypeEnum.MESSAGE, "导出成功" + "\n" + "导出行数为:"
+ selectedRow_i.length + "行\n" + "文件路径为:'" + path
+ ".txt'");
} else if (!"".equals(result_list) && result_list != null) {
for (int i = 2; i < (result_col.size() + 2); i++) {
vw = (SopmcontactsVW) result_list.get(i - 2);
content.append(strbufCopy(vw.getJobno(), 12));
content.append(strbufCopy(vw.getName(), 12));
content.append(strbufCopy(vw.getEname(), 22));
content.append(strbufCopy(vw.getExt(), 7));
content.append(strbufCopy(vw.getBranchdesc(), 22));
content.append(strbufCopy(vw.getPost(), 42));
content.append(strbufCopy(vw.getPhone(), 18));
content.append(strbufCopy(vw.getTelno(), 18));
content.append(strbufCopy(vw.getEmail(), 62));
content.append(strbufCopy(vw.getMsn(), 62));
content.append(vw.getMotto()+ "\n");
}
MessageController.showManualMessage(MessageDisplayTypeEnum.BOTH,
MessageDialogTypeEnum.MESSAGE, "导出成功" + "\n" + "导出数据为全部\n"
+ "文件路径为:'" + path + ".txt'");
}

out.write(content.toString());
// 关闭流
out.close();

return null;
}

/**
*
* @param str
* @param strlength
* @return
*/
private String strbufCopy(String str, int strlength) {
StringBuffer strBuf_s = new StringBuffer();
strBuf_s.insert(0, str);
for (int i = 0; i < str.length(); i++) {
//判断为中文
if (str.substring(i, i + 1).matches("[\u4e00-\u9fa5]")) {
strlength = strlength - 1;
}
}
strBuf_s.replace(0, str.length(), str);
for (int j = 0; j < strlength; j++) {
strBuf_s.append(" ");
}
return strBuf_s.substring(0, strlength);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值