- 浏览: 36234 次
- 来自: ...
最近访客 更多访客>>
最新评论
-
wushengwuxi:
dtree在IE9中无法正常显示
dTree -
zjnu09220229:
楼主的这个貌似对我很有用,不知可否将完整的代码让我看下,不胜感 ...
dTree -
linshutao:
就素就素,木有注释,不如不写~~
web.xml配置笔记 -
xutao5641745:
光写上有屁用?注释都不给个。。。。。。。。
web.xml配置笔记 -
southking:
<div class="quote_title ...
我的女朋友说我的老婆是电脑
导出Excel
DownloadExcelTable
导入Excel
package application.common.util; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Calendar; import javax.servlet.http.HttpServletResponse; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFDataFormat; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class ExportExcelUtil { private static short XLS_ENCODING = HSSFWorkbook.ENCODING_UTF_16; private static String DATE_FORMAT = " m/d/yy "; // "m/d/yy h:mm" private static String NUMBER_FORMAT = " #,##0.00 "; private String xlsFileName; private HSSFWorkbook workbook; private HSSFSheet sheet; private HSSFRow row; /** * @param fileName */ public ExportExcelUtil(String fileName) { this.xlsFileName = fileName; this.workbook = new HSSFWorkbook(); this.sheet = workbook.createSheet(); } /** * @param response * @throws Exception */ public void exportXLS(HttpServletResponse response) throws Exception { try { FileOutputStream fOut = new FileOutputStream(xlsFileName); workbook.write(fOut); fOut.flush(); fOut.close(); } catch (FileNotFoundException e) { throw new Exception(" ��ɵ���Excel�ļ����! ", e); } catch (IOException e) { throw new Exception(" д��Excel�ļ����! ", e); } } /** * @param index */ public void createRow(int index) { this.row = this.sheet.createRow(index); } /** * @param index * @param value */ public void setCell(int index, String value) { HSSFCell cell = this.row.createCell((short) index); cell.setCellType(HSSFCell.CELL_TYPE_STRING); cell.setEncoding(XLS_ENCODING); cell.setCellValue(value); } /** * 设置单元格的日期型格式的值 * @param index * @param value */ public void setCell(int index, Calendar value) { HSSFCell cell = this.row.createCell((short) index); cell.setEncoding(XLS_ENCODING); cell.setCellValue(value.getTime()); HSSFCellStyle cellStyle = workbook.createCellStyle(); cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat(DATE_FORMAT)); // ����cell��ʽΪ���Ƶ����ڸ�ʽ cell.setCellStyle(cellStyle); } /** * 设置单元格的int值 * @param index * @param value */ public void setCell(int index, int value) { HSSFCell cell = this.row.createCell((short) index); cell.setCellType(HSSFCell.CELL_TYPE_NUMERIC); cell.setCellValue(value); } /** * 设置单元格的double值 * @param index * @param value */ public void setCell(int index, double value) { HSSFCell cell = this.row.createCell((short) index); cell.setCellType(HSSFCell.CELL_TYPE_NUMERIC); cell.setCellValue(value); HSSFCellStyle cellStyle = workbook.createCellStyle(); HSSFDataFormat format = workbook.createDataFormat(); cellStyle.setDataFormat(format.getFormat(NUMBER_FORMAT)); cell.setCellStyle(cellStyle); } }
DownloadExcelTable
package application.common.util; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class DownloadExcelTable extends HttpServlet { /** * 构造方法 */ public DownloadExcelTable() { super(); } /** * 资源释放 */ public void destroy() { super.destroy(); } /** * 请求接收处理方法 * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } /** * 请求接收处理方法 * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String dir = request.getSession().getServletContext().getRealPath("/"); String fileName = request.getParameter("fileName"); InputStream in = new FileInputStream(dir + "temp" + fileName); responseWrite(in, response, fileName); File file = new File(fileName); if (file.exists()) { file.deleteOnExit(); } } /** * 初始化方法 * * @throws ServletException if an error occure */ public void init() throws ServletException { } /** * 输出响应方法 * * @param in * @param response * @param fileName */ public void responseWrite(InputStream in, HttpServletResponse response, String fileName) { ServletOutputStream out = null; try { response.reset(); response.addHeader("content-type", "application/x-msdownload"); response.addHeader("Content-Disposition", "attachment;filename=" + fileName); response.setContentType("application/vnd.ms-excel"); out = response.getOutputStream(); BufferedInputStream buffer = new BufferedInputStream(in); byte[] by = new byte[3 * 1024]; int length = 0; while ((length = buffer.read(by)) > 0) out.write(by, 0, length); out.flush(); if (out != null) { out.close(); } if (in != null) { in.close(); } } catch (IOException e) { e.printStackTrace(); } } }
导入Excel
package ui.web.whitelistmgr; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.net.URL; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; public class ImportWhiteExcelAction extends BaseAction { private Logger logger = Logger.getLogger(ImportWhiteExcelAction.class); private String COULUMN_LINKMANNAME = "联系人"; private String COULUMN_FROM = "来自"; private int LOCATION = 1; private String fileExtName = "xls"; private String ISOVER = "isOver"; private String NOTOVER = "notOver"; private int empID = 0; /** * 批量从EXCEL导入信息 * @param mapping * @param form * @param request * @param response * @return * @throws UnsupportedEncodingException */ public ActionForward importWhiteExcel(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException { //获取登陆ID LoginInfo loginIfo = (LoginInfo) request.getSession().getAttribute(SysConstants.GLOBAL_USER_SESSION); this.empID = Integer.parseInt(loginIfo.getLoginID()); ImportExcelForm importExcelForm = (ImportExcelForm) form; FormFile formFile = importExcelForm.getTheFile(); String fileName = formFile.getFileName(); // 获取资源文件,并取得键值 ApplicationGlobalResource appresource = ApplicationGlobalResource.getInstance(); String filePath = SysUtils.trim(appresource.getValueByKey("takepath.shangchuan")); //String filePath ="d:/temp/"; try { File file = new File(filePath); if (!file.exists()) { file.mkdir(); } } catch (Exception e1) { logger.info("导入Excel时创建文件异常"); } filePath = filePath.replace("\\", "/"); if (!filePath.endsWith("/")) { filePath += "/"; } String fullPath = filePath + fileName;; try { InputStream inputStream = formFile.getInputStream(); //建立一个上传文件的输出流 OutputStream bos = new FileOutputStream(fullPath); int bytesRead = 0; byte[] buffer = new byte[8192]; while ((bytesRead = inputStream.read(buffer, 0, 8192)) != -1) { bos.write(buffer, 0, bytesRead);//将文件写入服务器 } inputStream.close(); bos.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } boolean isOver = false; String error = ""; int errorNum = 0; String Over = importExcelForm.getIsOver(); if (Over.equalsIgnoreCase(ISOVER)) { isOver = true; } if (Over.equalsIgnoreCase(NOTOVER)) { isOver = false; } //如果文件路径不为空 if (fullPath != null && !fullPath.equalsIgnoreCase("")) { // 获取附件的后缀名 String last = fileName.substring(fileName.lastIndexOf(".") + LOCATION); if (last != null && last.equalsIgnoreCase(fileExtName)) { errorNum = writeExcel(importExcelForm, fullPath, isOver); if (errorNum == -1) { String msg = "excel文件的内容不合规范!"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); return mapping.findForward("inputWhiteList"); } if (errorNum == -2) { String msg = "excel文件内容为空"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); return mapping.findForward("inputWhiteList"); } if (errorNum == -3) { String msg = "导入Excel保存数据时异常!"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); return mapping.findForward("inputWhiteList"); } if (errorNum == -5) { String msg = "你所导入的文件不存在!"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); return mapping.findForward("inputWhiteList"); } } else { String msg = "您选中文件的格式不正确,请选择其他文件!"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); return mapping.findForward("inputWhiteList"); } } //如果文件路径为空 else { String msg = "您没有选择待导入的文件!"; logger.error(msg); error = getTheErrorMsg(msg); request.setAttribute("error", error); } return mapping.findForward("inputWhiteList"); } /** * 得到Excel sheet * @param filePath * @return */ private HSSFSheet getTheSheet(String filePath) { POIFSFileSystem fs = null; HSSFWorkbook wb = null; try { fs = new POIFSFileSystem(new FileInputStream(filePath)); wb = new HSSFWorkbook(fs); } catch (IOException e) { logger.error("你导入的文件不存在"); return null; } HSSFSheet sheet = wb.getSheetAt(0); return sheet; } /** * 写入EXCEL文件 * @param importExcelForm * @param filePath * @param isOver * @return */ private int writeExcel(ImportExcelForm importExcelForm, String filePath, boolean isOver) { int f = 0; HSSFSheet sheet = getTheSheet(filePath); if (sheet == null) { f = -5; return f; } boolean excelFormat = checkExcelFile(sheet); //如果excel文件的格式不合规范 if (!excelFormat) { f = -1; return f; } //如果excel文件为空 if (sheet == null) { f = -2; return f; } int rowNum = 0; //Excel文件记录数 int i = 0; int failSum = 0; int successSum = 0; rowNum = sheet.getLastRowNum(); IWhitelistMgrDS whitelistMgrDS = (IWhitelistMgrDS) SSBBus.findDomainService("whitelistMgsDS"); ILinkManDS iLinkManDS = (ILinkManDS) SSBBus.findDomainService("linkmanDS"); //从excel的第一行开始而不是从第零行开始 for (i = 1; i <= rowNum; i++) { Map map = getTheWhitemanDVO(sheet, i); //设置联系人ID WhitelistDVO newWhitelistDVO = new WhitelistDVO(); String linkmanName = (String) map.get("linkmanName"); if (linkmanName != null && linkmanName.equalsIgnoreCase("")) { failSum = failSum + 1; return -1; } int isFrom = 0; isFrom = (Integer) map.get("isFrom"); int empId = 0; empId = (Integer) map.get("empID"); //封装新的白名单对象 newWhitelistDVO.setUserFrom(isFrom); newWhitelistDVO.setEmpID(empId); newWhitelistDVO.setEnabled(1); newWhitelistDVO.setWhitelistType(2); List linkmanIdList = iLinkManDS.getLinkmanIdByName(linkmanName); //根据联系人名称去联系人查询,如果linkmanIdList不为null并且查到有这个人 if (linkmanIdList != null && linkmanIdList.size() > 0) { for (Iterator iter = linkmanIdList.iterator(); iter.hasNext();) { int linkmanId = 0; linkmanId = (Integer) iter.next(); newWhitelistDVO.setUserCode(linkmanId); //根据linkmanName查去联系人表里查询,如果有这个联系人,则把它加到白名单里,否则跳过不加,失败数加1 if (linkmanId == 0) { failSum = failSum + 1; } else { List list = whitelistMgrDS.getWhitelistDVOByLinkmanId(String.valueOf(linkmanId)); if (list != null && list.size() > 0) { for (Iterator witer = list.iterator(); witer.hasNext();) { WhitelistDVO whitelistDVO = (WhitelistDVO) witer.next(); //如果白名单里有此linkmanName的人,那就新增一条记录。成功数加1 if (whitelistDVO != null) { //则如果用户选择了覆盖,则修改记录为此userCode的人,成功数都加1; if (isOver) { try { newWhitelistDVO.setAutoSN(whitelistDVO.getAutoSN()); whitelistMgrDS.updateWhitelistDVO(newWhitelistDVO); } catch (RuntimeException e) { //失败数加1 failSum++; logger.error("导入Excel保存数据时异常"); e.printStackTrace(); } //成功数加1 successSum = successSum + 1; } //如果用户选择了不覆盖,则新增一条记录;成功数都加1 else { try { whitelistMgrDS.insertWhitelistDVO(newWhitelistDVO); //成功数加1 successSum = successSum + 1; } catch (RuntimeException e) { //失败数加1 failSum++; logger.error("导入Excel保存数据时异常"); e.printStackTrace(); } } } //如果白名单里没有此人,则加进该人 else { try { whitelistMgrDS.insertWhitelistDVO(newWhitelistDVO); //成功数加1 successSum = successSum + 1; } catch (RuntimeException e) { //失败数加1 failSum++; logger.error("导入Excel保存数据时异常"); e.printStackTrace(); } } } } //如果白名单里没有此人,则加进该人 else { try { whitelistMgrDS.insertWhitelistDVO(newWhitelistDVO); //成功数加1 successSum = successSum + 1; } catch (RuntimeException e) { //失败数加1 failSum++; logger.error("导入Excel保存数据时异常"); e.printStackTrace(); } } } } } //根据联系人名称去联系人查询,如果联系人表里没有此人 else { failSum = failSum + 1; } } importExcelForm.setFailSum(failSum); importExcelForm.setSuccessSum(successSum); return f; } /** * 封装白名单对象 * @param sheet * @param i * @return */ private Map getTheWhitemanDVO(HSSFSheet sheet, int i) { Map map = new HashMap(); map.put("empID", empID); HSSFRow row = null; row = sheet.getRow(i); String linkmanName = getStringCellValue(row.getCell((short) 0)); if ("".equals(linkmanName)) { logger.error("Excel里的联系人名称字段不能为空"); } map.put("linkmanName", linkmanName); String userFrom = getStringCellValue(row.getCell((short) 1)); if ("".equals(userFrom)) { logger.error("白名单联系人来自(是企业通讯录的还是个人通讯录的)为空"); } int isFrom = 0; if (userFrom.equalsIgnoreCase("企业通讯录")) { isFrom = 1; } else { isFrom = 0; } map.put("isFrom", isFrom); return map; } /** * 验证EXCEL文件 * @param sheet * @return */ private boolean checkExcelFile(HSSFSheet sheet) { HSSFRow row = null; HSSFCell cell = null; row = sheet.getRow(0); cell = row.getCell((short) 0); if (cell==null) { return false; } String userID = cell.getStringCellValue(); if (!userID.equalsIgnoreCase(COULUMN_LINKMANNAME)) { return false; } cell = row.getCell((short) 1); if (cell==null) { return false; } String from = cell.getStringCellValue(); if (!from.equalsIgnoreCase(COULUMN_FROM)) { return false; } return true; } /** * 封装错误消息 * @param msg * @return */ private String getTheErrorMsg(String msg) { StringBuffer errorMsg = new StringBuffer(); errorMsg.append("<script language=\"javascript\">"); errorMsg.append("alert('"); errorMsg.append(msg); errorMsg.append("\');"); errorMsg.append("</script>"); String error = errorMsg.toString(); return error; } /** * 根据不同的CELL类型,取出字符串格式的文本值: * lizan 2008-3-12 * @param cell * @return String */ private String getStringCellValue(HSSFCell cell) { try { switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_STRING: return cell.getStringCellValue(); case HSSFCell.CELL_TYPE_BOOLEAN: return String.valueOf(cell.getBooleanCellValue()); case HSSFCell.CELL_TYPE_NUMERIC: return String.valueOf((int)cell.getNumericCellValue()); default: return ""; } } catch(Exception e) { logger.error("获取单元格文本内容出错:", e); return ""; } } /** * 通过文件路径,获取文件方法,在Windows和linux下适用 * 注意,传入文件路径,需要截断第一个"/"字符 * * @param filePath 文件路径 * 例:"d:\windows\abc.txt"or"var/log/abc.txt" * @return File对象 * @throws Exception */ private File filePath2File(String filePath) throws Exception { File temp = null; try { URL urlTmp = null; //判定是Windows操作系统,还是linux操作系统 String osName = System.getProperty("os.name"); //java在windows和linux下的URL存在不同, //既windows下是"file:///+文件路径",linux下是"file:/+文件路径" if (-1 == osName.toUpperCase().indexOf("WINDOWS")) { urlTmp = new URL("file:/" + filePath); } else { //如果存在Windows名称,说明是windows操作系统 urlTmp = new URL("file:///" + filePath); } temp = new File(urlTmp.toURI()); } catch (Exception e) { throw new Exception("文件路径转化异常,请确认文件路径正确,例如:/var/log/abcd.log。异常:" + e.getMessage()); } if (temp != null && temp.exists()) { return temp; } else { throw new Exception("文件路径不存在。文件路径:" + filePath); } } }
发表评论
-
HttpClient
2009-03-19 09:47 0String url = SUBNODE_UCLO ... -
字符串的压缩和解压(包括加解密)
2008-10-26 18:47 1278import com.util.IArchive; ... -
让select支持onClick
2008-10-26 18:46 3214摘自fins的,留以备用 <!DOCTYPE HT ... -
dTree
2008-10-26 18:45 1614Frame <FRAMESET id=topFrame ... -
随机码生成
2008-10-26 18:45 1550package com.authority.ui.we ... -
会话超时过滤器
2008-10-26 18:44 1742package com.authority.filter; ... -
让select支持onClick
2008-06-06 10:41 0抄自finas的 <!DOCTYPE HTML P ... -
ajax学习笔记备忘
2008-03-19 21:34 856<script language="j ... -
http://imkenwu.javaeye.com/
2008-03-19 21:33 811http://imkenwu.iteye.com/ -
Servlet初始化的方法
2008-03-19 21:33 2871/** * Servlet覆盖初始化方法( ... -
分页笔记
2008-03-19 21:32 1260PageControlData.java package ... -
代码格式化
2008-03-19 21:32 859<?xml version="1.0" ... -
日期控件
2008-03-02 22:27 12日期控件 -
js开发工具
2007-12-25 16:56 755http://www.aptana.com/ -
common包
2007-12-25 10:30 831http://menjoy.iteye.com/blog/48 ... -
通用加密技术学习笔记
2007-12-24 18:16 1475import java.security.MessageD ... -
多线程学习笔记
2007-12-24 15:40 948多线程学习笔记 1、监控线程 priv ... -
数据库连接配置笔记备用
2007-12-24 14:52 833数据库连接配置笔记备用 <?xml version= ... -
web.xml配置笔记
2007-12-24 14:41 2290web.xml配置笔记 < ...
相关推荐
- **easypoi-annotation**: 注解包,用于定义导出Excel时的数据模型和字段。 - **easypoi-base**: 导入导出包,是核心功能所在,它提供了数据和Excel文件互相转换的核心实现。 - **easypoi-web**: 这个包提供了与...
本笔记将介绍如何使用POI来导入和导出Excel文件。 首先,我们需要将`poi-3.1-FINAL.jar`库添加到项目的类路径中,这样才能使用POI提供的API。导入这个库后,我们就可以开始编写处理Excel文件的代码了。 在示例代码...
### Web导出Excel知识点 #### 一、导出原理与技术栈 在Web开发中,经常需要将数据导出为Excel格式,以便于用户下载或进一步处理。这涉及到多个技术点,包括前端触发导出操作、后端处理数据并生成Excel文件等。本文...
本课程将给大家分享如何基于SSM实现POI导入导出Excel,并讲解目前企业级JavaWeb应用mvc三层模式的开发流程,可让初学者或者职场萌新掌握如何基于SSM整合第三方框架并采用mvc三层开发模式实现自己的业务模块!
在"POI导出Excel笔记"的博客中,可能会详细讲解以下关键知识点: 1. **初始化工作簿**:首先,你需要创建一个Workbook对象,这可以是XSSFWorkbook(用于.xlsx格式,属于新的OOXML格式)或HSSFWorkbook(用于.xls...
13. **导入与导出数据**:Excel可以连接到其他数据源(如数据库、网页、CSV文件等),导入数据并进行处理,也可将数据导出为各种格式。 14. **VBA编程**:对于高级用户,Visual Basic for Applications(VBA)允许...
符号表的导入导出功能允许用户将符号表从PLC导出到外部文件中,或者将外部文件中的符号表导入到PLC中。这个功能在软件升级、备份以及多人协作开发时非常有用。但是,符号表导出过程中常常会遇到一些问题,其中最常见...
本文档为阿雷R语言系列的第三期笔记,主要内容为R语言数据的导入和导出。 一、R语言数据导入 在R语言中,数据导入是最基本的操作之一。R语言提供了多种方式来导入数据,包括从Excel、CSV、TXT等文件格式中导入数据...
#### 四、数据导入和导出 将数据库记录导入Excel工作表是VBA与Access整合的核心应用场景之一。笔记中不仅提供了使用ADO和DAO的方法,还提到了使用QueryTable集合的技巧,这为数据处理提供了更多的选择和灵活性。 #...
7. **数据导入导出**:VBA可以将Excel数据导入到Access,或将Access数据导入到Excel。这通常涉及打开记录集,读取数据,然后在目标工作表中写入数据,或者反之。 8. **错误处理**:在VBA编程中,应始终包含错误处理...
在Java编程领域,处理Excel文件是一项常见的任务,特别是在数据分析、报表生成或数据导入导出时。本学习笔记将深入探讨如何使用Apache POI库来实现Java对Excel的高效操作。 Apache POI是一个开源项目,提供了读写...
1. **数据导入导出**:VBA可以连接到Access数据库,读取或写入数据。例如,你可以用VBA编写脚本来定期从Access导入数据到Excel进行分析,或者将处理后的结果导回Access更新数据库。 2. **实时数据同步**:通过VBA,...
1. 数据导入导出:通过VBA脚本,自动将Access中的数据导入到Excel,或者将Excel数据保存到Access数据库中,进行数据分析或报表制作。 2. 实时数据同步:建立连接,实现实时从Access数据库获取数据更新,或者将Excel...
4. **数据导入与导出**:在Excel中,数据通常存储为CSV或Excel文件。在Python中,Pandas提供了read_csv、read_excel等函数,可以轻松地将这些数据导入到DataFrame中。同时,也可以使用to_csv、to_excel方法将数据...
在具体的功能细节上,MindMaster支持将绘制完成的思维导图导出为多种格式,包括但不限于Office文档(Word、Excel、PPT)、PDF、图片(PNG、JPEG、GIF等)以及HTML、SVG等。这种高度的格式兼容性意味着用户可以轻松地...
总结来说,MindMaster作为一款功能丰富的国产思维导图软件,不仅能满足基本的思维导图绘制需求,还具备强大的文件导入导出能力,跨平台支持以及云协作功能,使其在同类软件中脱颖而出。对于需要高效组织思维和信息...
本文主要介绍在ArcGIS中进行Excel数据转换为Shapefile、导出图形坐标以及在线相交处打断线的三个关键操作。 一、Excel转成Shapefile 在ArcGIS中,可以利用"Add XY Data"工具将Excel数据转换为地理空间数据。首先...
标题 "onenote笔记.zip" 暗示了这是一个包含Microsoft OneNote笔记的压缩文件,而描述 "我的onenote笔记" 表明这是个人创建或收集的一系列笔记。OneNote是微软出品的一款强大的数字笔记本应用,它允许用户组织、编辑...
类中包含静态常量`FILE_SEPARATOR`用于获取文件路径分隔符,并提供了导出Excel的方法。该类的具体实现未完全给出,但可以看出它是通过泛型T来处理不同类型的导入导出数据。 总结来说,这篇实习笔记展示了在实际项目...
Pandas提供了read_csv和to_csv函数,使得数据导入导出变得简单。另外,Pandas的merge、concat、join等方法能够方便地合并不同数据集,这在Excel中可能需要复杂的公式或者VBA宏来完成。 Python还擅长数据清洗,通过...