转:jxl导出excel(合并单元格)
Demo
代码如下:
import java.io.*;
import jxl.*;
import jxl.format.UnderlineStyle;
import jxl.write.*;
public class CreateXLS {
public static void main(String args[]) {
try {
//打开文件
WritableWorkbook book= Workbook.createWorkbook(new File("测试.xls"));
//生成名为“第一页”的工作表,参数0表示这是第一页
WritableSheet sheetOne=book.createSheet("第一页",0); /**
* 定义单元格样式
*/
WritableFont wf_title = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色
WritableFont wf_head = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色
WritableFont wf_table = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色 WritableCellFormat wcf_title = new WritableCellFormat(wf_title); // 单元格定义
wcf_title.setBackground(jxl.format.Colour.WHITE); // 设置单元格的背景颜色
wcf_title.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_title1 = new WritableCellFormat(wf_title); // 单元格定义
wcf_title1.setBackground(jxl.format.Colour.LIGHT_GREEN); // 设置单元格的背景颜色
wcf_title1.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_title2 = new WritableCellFormat(wf_title); // 单元格定义
wcf_title2.setBackground(jxl.format.Colour.YELLOW2); // 设置单元格的背景颜色
wcf_title2.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_head1 = new WritableCellFormat(wf_head);
wcf_head1.setBackground(jxl.format.Colour.LIGHT_GREEN);
wcf_head1.setAlignment(jxl.format.Alignment.CENTRE);
wcf_head1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_head2 = new WritableCellFormat(wf_head);
wcf_head2.setBackground(jxl.format.Colour.YELLOW2);
wcf_head2.setAlignment(jxl.format.Alignment.CENTRE);
wcf_head2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_table1 = new WritableCellFormat(wf_table);
wcf_table1.setBackground(jxl.format.Colour.LIGHT_GREEN);
wcf_table1.setAlignment(jxl.format.Alignment.CENTRE);
wcf_table1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_table2 = new WritableCellFormat(wf_table);
wcf_table2.setBackground(jxl.format.Colour.YELLOW2);
wcf_table2.setAlignment(jxl.format.Alignment.CENTRE);
wcf_table2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); sheetOne.setColumnView(0, 15); // 设置列的宽度
sheetOne.setColumnView(1, 15); // 设置列的宽度
sheetOne.setColumnView(2, 15); // 设置列的宽度
sheetOne.setColumnView(3, 15); // 设置列的宽度
sheetOne.setColumnView(4, 15); // 设置列的宽度
sheetOne.setColumnView(5, 15); // 设置列的宽度
sheetOne.setColumnView(6, 15); // 设置列的宽度
sheetOne.setColumnView(7, 15); // 设置列的宽度
sheetOne.setColumnView(8, 15); // 设置列的宽度
sheetOne.setColumnView(9, 15); // 设置列的宽度
sheetOne.setColumnView(10, 15); // 设置列的宽度
sheetOne.setColumnView(11, 15); // 设置列的宽度
sheetOne.setColumnView(12, 15); // 设置列的宽度
sheetOne.setColumnView(13, 15); // 设置列的宽度 //在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
//以及单元格内容为test
Label title=new Label(0,0,"统计",wcf_title);
Label titleOne=new Label(0,1,"统计1",wcf_title1);
Label titleTwo=new Label(2,1,"统计2",wcf_title2); Label column1=new Label(0,2,"姓名",wcf_head1);
Label column2=new Label(1,2,"所选课程",wcf_head1); Label column3=new Label(2,2,"姓名",wcf_head2);
Label column4=new Label(3,2,"所选课程",wcf_head2); //或者WritableCell cell = new jxl.write.Number(column, row, value, wcf)
//将定义好的单元格添加到工作表中
sheetOne.addCell(title);
sheetOne.addCell(titleOne);
sheetOne.addCell(titleTwo); sheetOne.addCell(column1);
sheetOne.addCell(column2);
sheetOne.addCell(column3);
sheetOne.addCell(column4); //合: 第1列第1行 到 第13列第1行
sheetOne.mergeCells(0, 0, 3, 0);
sheetOne.mergeCells(0, 1, 1, 1);
sheetOne.mergeCells(2, 1, 3, 1); /*动态数据 */
Label content1=new Label(0,3,"张三",wcf_table1);
Label content2=new Label(0,4,"张三",wcf_table1);
Label content3=new Label(0,5,"张三",wcf_table1);
Label kecheg1=new Label(1,3,"语文",wcf_table1);
Label kecheg2=new Label(1,4,"数学",wcf_table1);
Label kecheg3=new Label(1,5,"英语",wcf_table1); sheetOne.addCell(content1);
sheetOne.addCell(content2);
sheetOne.addCell(content3);
sheetOne.addCell(kecheg1);
sheetOne.addCell(kecheg2);
sheetOne.addCell(kecheg3); sheetOne.mergeCells(0, 3, 0, 2+3); Label content11=new Label(2,3,"李四",wcf_table2);
Label content22=new Label(2,4,"李四",wcf_table2);
Label content33=new Label(2,5,"李四",wcf_table2);
Label kecheg11=new Label(3,3,"语文",wcf_table2);
Label kecheg22=new Label(3,4,"数学",wcf_table2);
Label kecheg33=new Label(3,5,"英语",wcf_table2); sheetOne.addCell(content11);
sheetOne.addCell(content22);
sheetOne.addCell(content33);
sheetOne.addCell(kecheg11);
sheetOne.addCell(kecheg22);
sheetOne.addCell(kecheg33); sheetOne.mergeCells(2, 3, 2, 2+3); //写入数据并关闭文件
book.write();
book.close();
}catch(Exception e){
System.out.println(e);
}
}
} import java.io.*;
import jxl.*;
import jxl.format.UnderlineStyle;
import jxl.write.*;
public class CreateXLS {
public static void main(String args[]) {
try {
//打开文件
WritableWorkbook book= Workbook.createWorkbook(new File("测试.xls"));
//生成名为“第一页”的工作表,参数0表示这是第一页
WritableSheet sheetOne=book.createSheet("第一页",0); /**
* 定义单元格样式
*/
WritableFont wf_title = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色
WritableFont wf_head = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色
WritableFont wf_table = new WritableFont(WritableFont.ARIAL, 11,
WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK); // 定义格式 字体 下划线 斜体 粗体 颜色 WritableCellFormat wcf_title = new WritableCellFormat(wf_title); // 单元格定义
wcf_title.setBackground(jxl.format.Colour.WHITE); // 设置单元格的背景颜色
wcf_title.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_title1 = new WritableCellFormat(wf_title); // 单元格定义
wcf_title1.setBackground(jxl.format.Colour.LIGHT_GREEN); // 设置单元格的背景颜色
wcf_title1.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_title2 = new WritableCellFormat(wf_title); // 单元格定义
wcf_title2.setBackground(jxl.format.Colour.YELLOW2); // 设置单元格的背景颜色
wcf_title2.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
wcf_title2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //设置边框 WritableCellFormat wcf_head1 = new WritableCellFormat(wf_head);
wcf_head1.setBackground(jxl.format.Colour.LIGHT_GREEN);
wcf_head1.setAlignment(jxl.format.Alignment.CENTRE);
wcf_head1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_head2 = new WritableCellFormat(wf_head);
wcf_head2.setBackground(jxl.format.Colour.YELLOW2);
wcf_head2.setAlignment(jxl.format.Alignment.CENTRE);
wcf_head2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_table1 = new WritableCellFormat(wf_table);
wcf_table1.setBackground(jxl.format.Colour.LIGHT_GREEN);
wcf_table1.setAlignment(jxl.format.Alignment.CENTRE);
wcf_table1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); WritableCellFormat wcf_table2 = new WritableCellFormat(wf_table);
wcf_table2.setBackground(jxl.format.Colour.YELLOW2);
wcf_table2.setAlignment(jxl.format.Alignment.CENTRE);
wcf_table2.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); sheetOne.setColumnView(0, 15); // 设置列的宽度
sheetOne.setColumnView(1, 15); // 设置列的宽度
sheetOne.setColumnView(2, 15); // 设置列的宽度
sheetOne.setColumnView(3, 15); // 设置列的宽度
sheetOne.setColumnView(4, 15); // 设置列的宽度
sheetOne.setColumnView(5, 15); // 设置列的宽度
sheetOne.setColumnView(6, 15); // 设置列的宽度
sheetOne.setColumnView(7, 15); // 设置列的宽度
sheetOne.setColumnView(8, 15); // 设置列的宽度
sheetOne.setColumnView(9, 15); // 设置列的宽度
sheetOne.setColumnView(10, 15); // 设置列的宽度
sheetOne.setColumnView(11, 15); // 设置列的宽度
sheetOne.setColumnView(12, 15); // 设置列的宽度
sheetOne.setColumnView(13, 15); // 设置列的宽度 //在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
//以及单元格内容为test
Label title=new Label(0,0,"统计",wcf_title);
Label titleOne=new Label(0,1,"统计1",wcf_title1);
Label titleTwo=new Label(2,1,"统计2",wcf_title2); Label column1=new Label(0,2,"姓名",wcf_head1);
Label column2=new Label(1,2,"所选课程",wcf_head1); Label column3=new Label(2,2,"姓名",wcf_head2);
Label column4=new Label(3,2,"所选课程",wcf_head2); //或者WritableCell cell = new jxl.write.Number(column, row, value, wcf)
//将定义好的单元格添加到工作表中
sheetOne.addCell(title);
sheetOne.addCell(titleOne);
sheetOne.addCell(titleTwo); sheetOne.addCell(column1);
sheetOne.addCell(column2);
sheetOne.addCell(column3);
sheetOne.addCell(column4); //合: 第1列第1行 到 第13列第1行
sheetOne.mergeCells(0, 0, 3, 0);
sheetOne.mergeCells(0, 1, 1, 1);
sheetOne.mergeCells(2, 1, 3, 1); /*动态数据 */
Label content1=new Label(0,3,"张三",wcf_table1);
Label content2=new Label(0,4,"张三",wcf_table1);
Label content3=new Label(0,5,"张三",wcf_table1);
Label kecheg1=new Label(1,3,"语文",wcf_table1);
Label kecheg2=new Label(1,4,"数学",wcf_table1);
Label kecheg3=new Label(1,5,"英语",wcf_table1); sheetOne.addCell(content1);
sheetOne.addCell(content2);
sheetOne.addCell(content3);
sheetOne.addCell(kecheg1);
sheetOne.addCell(kecheg2);
sheetOne.addCell(kecheg3); sheetOne.mergeCells(0, 3, 0, 2+3); Label content11=new Label(2,3,"李四",wcf_table2);
Label content22=new Label(2,4,"李四",wcf_table2);
Label content33=new Label(2,5,"李四",wcf_table2);
Label kecheg11=new Label(3,3,"语文",wcf_table2);
Label kecheg22=new Label(3,4,"数学",wcf_table2);
Label kecheg33=new Label(3,5,"英语",wcf_table2); sheetOne.addCell(content11);
sheetOne.addCell(content22);
sheetOne.addCell(content33);
sheetOne.addCell(kecheg11);
sheetOne.addCell(kecheg22);
sheetOne.addCell(kecheg33); sheetOne.mergeCells(2, 3, 2, 2+3); //写入数据并关闭文件
book.write();
book.close();
}catch(Exception e){
System.out.println(e);
}
}
}
其他代码参考
public void createZJData(List<CountVO> zjList,WritableSheet sheet) throws RowsExceededException, WriteException {
//(为合并做准备)在运阶段有多少个子系统
for (int j = 0; j < zjList.size(); j++) {
if(zjSonSysList.get(zjList.get(j).getNumber3()) != null){
zjSonSysList.get(zjList.get(j).getNumber3()).add(zjList.get(j));
}else{
List<CountVO> vos = new ArrayList<CountVO>();
vos.add(zjList.get(j));
zjSonSysList.put(zjList.get(j).getNumber3(), vos);
}
}
//动态生成数据
if(zjSonSysList != null && zjSonSysList.size() > 0){
for (Iterator iter = zjSonSysList.entrySet().iterator(); iter.hasNext();){
Entry entry = (Entry) iter.next();
String key = (String) entry.getKey();
List<CountVO> sonSysVO = (List<CountVO>) entry.getValue();
for (int t = 0; t < sonSysVO.size(); t++) {
Label content1=new Label(7,zjEndNum+t,sonSysVO.get(t).getNumber1(),wcf_table2);
Label content2=new Label(8,zjEndNum+t,sonSysVO.get(t).getNumber2(),wcf_table2);
Label content3=new Label(9,zjEndNum+t,sonSysVO.get(t).getNumber3(),wcf_table2);
Label content4=new Label(10,zjEndNum+t,sonSysVO.get(t).getNumber4(),wcf_table2);
Label content5=new Label(11,zjEndNum+t,sonSysVO.get(t).getNumber5(),wcf_table2);
Label content6=new Label(12,zjEndNum+t,sonSysVO.get(t).getNumber6(),wcf_table2);
Label mk=new Label(13,zjEndNum+t,sonSysVO.get(t).getNumber7(),wcf_table2);
sheet.addCell(content1);
sheet.addCell(content2);
sheet.addCell(content3);
sheet.addCell(content4);
sheet.addCell(content5);
sheet.addCell(content6);
sheet.addCell(mk);
if(t == (sonSysVO.size() - 1)){
zjEndNum = zjEndNum+t+1;
}else{
zjEndNum = zjEndNum+t;
}
}
int offer = sonSysVO.size();
//合并: 第1列第1行 到 第13列第1行
sheet.mergeCells(7, zjEndNum-offer, 7, zjEndNum-1);
sheet.mergeCells(8, zjEndNum-offer, 8, zjEndNum-1);
sheet.mergeCells(9, zjEndNum-offer, 9, zjEndNum-1);
sheet.mergeCells(10, zjEndNum-offer, 10, zjEndNum-1);
sheet.mergeCells(11, zjEndNum-offer, 11, zjEndNum-1);
sheet.mergeCells(12, zjEndNum-offer, 12, zjEndNum-1);
}
}
//使用完毕后恢复,供下一个类型sheet使用
zjEndNum = 3;
zjSonSysList.clear();
zjList.clear();
}
public void createZJData(List<CountVO> zjList,WritableSheet sheet) throws RowsExceededException, WriteException {
//(为合并做准备)在运阶段有多少个子系统
for (int j = 0; j < zjList.size(); j++) {
if(zjSonSysList.get(zjList.get(j).getNumber3()) != null){
zjSonSysList.get(zjList.get(j).getNumber3()).add(zjList.get(j));
}else{
List<CountVO> vos = new ArrayList<CountVO>();
vos.add(zjList.get(j));
zjSonSysList.put(zjList.get(j).getNumber3(), vos);
}
}
//动态生成数据
if(zjSonSysList != null && zjSonSysList.size() > 0){
for (Iterator iter = zjSonSysList.entrySet().iterator(); iter.hasNext();){
Entry entry = (Entry) iter.next();
String key = (String) entry.getKey();
List<CountVO> sonSysVO = (List<CountVO>) entry.getValue();
for (int t = 0; t < sonSysVO.size(); t++) {
Label content1=new Label(7,zjEndNum+t,sonSysVO.get(t).getNumber1(),wcf_table2);
Label content2=new Label(8,zjEndNum+t,sonSysVO.get(t).getNumber2(),wcf_table2);
Label content3=new Label(9,zjEndNum+t,sonSysVO.get(t).getNumber3(),wcf_table2);
Label content4=new Label(10,zjEndNum+t,sonSysVO.get(t).getNumber4(),wcf_table2);
Label content5=new Label(11,zjEndNum+t,sonSysVO.get(t).getNumber5(),wcf_table2);
Label content6=new Label(12,zjEndNum+t,sonSysVO.get(t).getNumber6(),wcf_table2);
Label mk=new Label(13,zjEndNum+t,sonSysVO.get(t).getNumber7(),wcf_table2);
sheet.addCell(content1);
sheet.addCell(content2);
sheet.addCell(content3);
sheet.addCell(content4);
sheet.addCell(content5);
sheet.addCell(content6);
sheet.addCell(mk);
if(t == (sonSysVO.size() - 1)){
zjEndNum = zjEndNum+t+1;
}else{
zjEndNum = zjEndNum+t;
}
}
int offer = sonSysVO.size();
//合并: 第1列第1行 到 第13列第1行
sheet.mergeCells(7, zjEndNum-offer, 7, zjEndNum-1);
sheet.mergeCells(8, zjEndNum-offer, 8, zjEndNum-1);
sheet.mergeCells(9, zjEndNum-offer, 9, zjEndNum-1);
sheet.mergeCells(10, zjEndNum-offer, 10, zjEndNum-1);
sheet.mergeCells(11, zjEndNum-offer, 11, zjEndNum-1);
sheet.mergeCells(12, zjEndNum-offer, 12, zjEndNum-1);
}
}
//使用完毕后恢复,供下一个类型sheet使用
zjEndNum = 3;
zjSonSysList.clear();
zjList.clear();
}
//自定义背景色方法getNearestColour("#99cc00")
public static Colour getNearestColour(String strColor) {
Color cl = Color.decode(strColor);
Colour color = null;
Colour[] colors = Colour.getAllColours();
if ((colors != null) && (colors.length > 0)) {
Colour crtColor = null;
int[] rgb = null;
int diff = 0;
int minDiff = 999;
for (int i = 0; i < colors.length; i++) {
crtColor = colors[i];
rgb = new int[3];
rgb[0] = crtColor.getDefaultRGB().getRed();
rgb[1] = crtColor.getDefaultRGB().getGreen();
rgb[2] = crtColor.getDefaultRGB().getBlue();
diff = Math.abs(rgb[0] - cl.getRed())
+ Math.abs(rgb[1] - cl.getGreen())
+ Math.abs(rgb[2] - cl.getBlue());
if (diff < minDiff) {
minDiff = diff;
color = crtColor;
}
}
}
if (color == null)
color = Colour.BLACK;
return color;
}
本文转自:http://blog.csdn.net/goodleiwei/article/details/8553727
转:jxl导出excel(合并单元格)的更多相关文章
- poi导出excel合并单元格(包括列合并、行合并)
1 工程所需jar包如下:commons-codec-1.5.jarcommons-logging-1.1.jarlog4j-1.2.13.jarjunit-3.8.1.jarpoi-3.9-2012 ...
- java poi导出Excel合并单元格并设置边框
import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; i ...
- npoi导出excel合并单元格
需要引用NPOI.dll程序集和Ionic.Zip.dll程序集 string[] headerRowName = { "序号", "地市", "镇街 ...
- asp.net C#取Excel 合并单元格内容
asp教程.net c#取excel 合并单元格内容读取excel数据,填充dataset// 连接字符串 string xlspath = server.mappath("~/www.11 ...
- Html Table用JS导出excel格式问题 导出EXCEL后单元格里的000412341234会变成412341234 7-14 会变成 2018-7-14(7月14) 自定义格式 web利用table表格生成excel格式问题 js导出excel增加表头、mso-number-format定义数据格式 数字输出格式转换 mso-number-format:"\@"
Html Table用JS导出excel格式问题 我在网上找的JS把HTML Tabel导出成EXCEL.但是如果Table里的数字内容为0开的的导成Excel后会自动删除0,我想以text的格式写入 ...
- 在Asp.Net MVC中使用NPOI插件实现对Excel的操作(导入,导出,合并单元格,设置样式,输入公式)
前言 NPOI 是 POI 项目的.NET版本,它不使用 Office COM 组件,不需要安装 Microsoft Office,目前支持 Office 2003 和 2007 版本. 1.整个Ex ...
- NPOI之Excel——合并单元格、设置样式、输入公式
首先建立一个空白的工作簿用作测试,并在其中建立空白工作表,在表中建立空白行,在行中建立单元格,并填入内容: //建立空白工作簿 IWorkbook workbook = new HSSFWorkboo ...
- 让我头疼一下午的Excel合并单元格
Excel导出常见问题 excel导出其实不算什么难事 在网上copy下模板代码,填充自己的业务数据,提供一个http接口基本就可以得到你要导出的数据了. 但是,凡事都有例外,截止今天,excel导出 ...
- NPOI之Excel——合并单元格、设置样式、输入公式、设置筛选等
首先建立一个空白的工作簿用作测试,并在其中建立空白工作表,在表中建立空白行,在行中建立单元格,并填入内容: //建立空白工作簿 IWorkbook workbook = new HSSFWorkboo ...
- 【NetOffice Excel】Excel合并单元格【原】
CSharp操作Excel采用开源的原生.NET程序集NetOffice,格式兼容性更好. 在操作Excel的时候有时候需要合并单元格 using ExcelOffice = NetOffice.Ex ...
随机推荐
- android获取手机录
在Android开发中,读取手机通讯录中的号码是一种基本操作,但是由于Android的版本众多,所以手机通讯录操作的代码比较纷杂,在本文中进行一下总结. Android1.5是现在的Android系统 ...
- MVC4.0 利用HandleErrorAttribute和log4net实现记录异常日志功能
1.MVC4.0中HandleErrorAttribte已经帮我们处理了异常问题,当我们新建一个非空的MVC项目时候,在FilterConfig中会发现这样的代码 public class Filte ...
- Labview实现脉波调制( PAM )
Labview实现脉波调制( PAM ) 根据定义为脉冲振幅调制 生成一个正弦信号,得到其幅值输入给一个方波信号的幅值 这个等价于一个方波信号和一个正弦信号相乘 得到的PAM信号通过观察其频率可以发现 ...
- 典型用户 persona
persona 典型用户 1.姓名:王涛 2.年龄:22 3.收入:基本无收入 4.代表用户在市场上的比例和重要性:王涛为铁道学生.本软件的用户主要是学生和老师,尤其是广大的铁大学子,所以此典型用户的 ...
- 《梦断代码》读书笔记第0篇——“软件时间”、“死定了”、“Agenda之魂“
第0章 软件时间 在未读这本书前,刚看到名字觉得是本讲代码的书,后来老师说是一个个的故事,这引起了我的兴趣,于是我便速速开始了第0章的阅读,读完一遍大概能读懂在讲什么,可能由于是译过来的书,书里面一 ...
- Java缓冲流细节
FileOutPutStream继承OutputStream,并不提供flush()方法的重写所以无论内容多少write都会将二进制流直接传递给底层操作系统的I/O,flush无效果.而Buffere ...
- My97DatePicker控制开始时间和结束时间区间
开始时间: <input type="text" placeholder=" -请选择- " id="kssj" name=" ...
- Netsharp快速入门(之17) Netsharp基础功能(参照高级设置)
5.2 参照高级设置 1. 以往来字段为例,打开平台工具-界面管理-列表管理,找到往来单位的资源节点,记下列表项目中的名称 2.记下往来单位部件工作区的id 3. 打开平台工具-界面管理-参照 ...
- SQL通用查询
获取日期截取 ), ) --不要时间2002-1-1 ),) ----20020101 ),) ---06:05:05
- 设计模式 --深入理解javascript
/* 一.单例模式 */ var Universe; (function () { var instance; Universe = function Universe() { if (instanc ...