- 浏览: 301685 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
masuweng:
如何给新人机会 -
masuweng:
多sql结果集按列合并新结果报表实现方案 -
Ahe:
赞
坚持长跑方能赢 -
masuweng:
好好好
程序员如何更好的了解自己所做的事情 -
小楠人:
laoguan123 写道楼主好,使用过一些excel导入导出 ...
excell导入导出
部分代码:
源码参考:
https://github.com/jamst/tool-node/blob/master/excell_to_email
module FileHandle extend ActiveSupport::Concern #Roo::Spreadsheet 直接读取文件导入 module ClassMethods def import_data(file,current_user) imports = { failed: []} messages = {color:"#ff0000"} unless file.blank? orig_name = file.original_filename if ".XLSX" == File.extname(orig_name).upcase require 'roo' @students = [] path = file.tempfile.path workbook = Roo::Spreadsheet.open path worksheet = workbook.sheet(0) row_no = 1 worksheet.each_row_streaming(offset: 1, pad_cells: true) do |row| row_no += 1 next if row[0].blank? record = {excel_row: row_no, success: true} self::IMPORT_COLUMNS.each do |c,i| record[c] = row[i]&.value end return_student, message = self.save_from_hash(record, current_user) @students << return_student if return_student.blank? record[:success] = false record[:message] = message imports[:failed] << record end end if imports == { failed: [] } messages[:color] = "#00DD00" messages[:detail] = "导入成功" end else messages[:detail] = "文件格式要求为.xlsx格式。" end else messages[:detail] = "请上传文件" end [imports,messages] end # 使用固定模版文件导出 def export_data file = Spreadsheet.open "#{Rails.root}/public/xls/#{self.table_name}.xls" list = file.worksheet 0 self.all.each_with_index do |r,index| self::EXPORT_COLUMN.each do |k,v| k = k.to_s list[index+1,v] = k.include?('|') ? r.send(k.split('|').first)&.send(k.split('|').last) : r.send(k) end end xls_report = StringIO.new file.write xls_report return xls_report.string end end end
源码参考:
https://github.com/jamst/tool-node/blob/master/excell_to_email
评论
2 楼
小楠人
2017-06-09
laoguan123 写道
楼主好,使用过一些excel导入导出的工具类,但是发现占据内存和cpu特别大的资源,可否指教一下怎么选择一个好的,节省资源的方法?
1 楼
laoguan123
2017-06-08
楼主好,使用过一些excel导入导出的工具类,但是发现占据内存和cpu特别大的资源,可否指教一下怎么选择一个好的,节省资源的方法?
发表评论
-
git仓库创建
2020-09-04 15:33 710推送现有文件夹 cd existing_folder git ... -
puma高并发
2020-08-19 09:31 475nginx突发大量502报错 top看一下,cpu的占用并不高 ... -
searchkick
2019-04-10 11:30 0# 通用查询块(条件) def general_ ... -
导入线下excell业务数据按权重匹配线上数据
2019-03-07 11:00 899业务场景:(系统间还没有接口对调,订单号暂时需要线下处理) 线 ... -
两对象同时映射一对一和一对多
2019-02-20 10:14 842class Kpi::Team < Applicat ... -
ruby一些类加载方式
2018-12-21 10:12 566require_dependency 'order/sco ... -
基于ruby的gem remotipart的异步上传文件
2018-12-21 10:11 534针对某一对象保存实例化之前,异步上传图片保存。 gem ' ... -
基于html2canvas的长图分享
2018-12-21 10:11 1160<span class="ui label ... -
rails处理上传读取excell&生成excell
2018-12-20 14:15 979gem 'spreadsheet' gem 'roo', ... -
基于ruby Mechanize的爬虫
2018-12-20 13:09 676def self.sang_carwler ... -
一些常用加密方式
2018-12-20 13:02 730sign = OpenSSL::Digest::SHA256. ... -
ruby 调用restful接口示例
2018-12-20 12:02 927链接参数中添加token def self.query_p ... -
rails错误日志记录
2018-12-19 14:41 767Rails中对日志的处理采用的是“消息-订阅”机制,各部分组件 ... -
railsAPI接收Base64文件
2018-12-18 11:05 1039tmp_dir = " ... -
ruby 调用savon接口示例
2018-12-18 10:51 1024例子一 module Api module Aob ... -
关于国际商城现货展示与购物车的费用设计
2018-11-15 18:34 442关于国际商城现货展示 ... -
基于多线程的全局变量
2018-10-31 19:50 1167def current_nation def ... -
hash最小值过滤算法
2018-10-31 09:52 1087[["数量","包装" ... -
阿里云裸机部署rails运用
2018-10-08 20:33 1392登录阿里云后首先 sudo apt-get update a ... -
打包订单单据发给货代
2018-09-11 15:43 1180pdf&excell&png # rend ...
相关推荐
这个"asp将EXCEL导入导出数据库原程序"提供了一个解决方案,能够方便地将Excel中的数据存入MSSQL数据库,同时也能将数据库中的数据导出到Excel文件。 首先,我们需要了解如何使用ASP连接MSSQL数据库。通常,这涉及...
Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel...
Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出Excel导入导出
Java POI 实现 Excel 导入导出 Java POI 是一个流行的 Java 库,用于处理 Microsoft Office 文件格式,包括 Excel 文件。在本文中,我们将详细介绍如何使用 Java POI 实现 Excel 导入导出功能。 1. 什么是 Java ...
thinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel...
Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出...
在IT行业中,Excel导入导出性能优化是一个常见且重要的议题,尤其对于处理大量数据的应用程序。Excel文件格式广泛用于数据存储和分析,但其导入和导出操作可能会对系统性能产生显著影响,尤其是在高并发环境下。以下...
万能的Excel导入导出工具. 支持从List中导出. 支持从List中导入导出. 支持从List里面还有List<POJO>>中导入导出. 支持导出类似课程表结构类型纵表. 支持国际化. 支持数据字典. 支持单元格中下拉框数据校验. 支持自动...
Excel导入导出插件是一种工具,它扩展了Excel的功能,使得用户能够方便地从电子表格中导入数据到其他系统,或者从外部数据源导出数据到Excel进行分析和处理。这种插件通常用于数据迁移、数据整合或数据分析,特别是...
针对Office 2003和Office 2007版本的Excel导入导出功能,开发者通常需要编写特定的代码来实现自动化操作。"Excel导入导出封装"是一个专门解决这一问题的测试类库,旨在简化这一过程,提高开发效率。 首先,我们要...
标题"Excel 导入导出 (asp.net/c#)"所涉及的核心知识点主要包括Excel文件操作、C#编程以及ASP.NET web应用程序开发。下面我们将详细探讨这些主题。 1. **Excel文件操作**: - **Microsoft.Office.Interop.Excel**:...
Excel源代码,导入导出各种工具类 <groupId>org.apache.poi <artifactId>poi <groupId>org.apache.poi <artifactId>poi-scratchpad 代码实例: String path = ""; byte[] bytes; vo.setCurrentPage(0); vo....
Excel导入导出是常见的需求,例如数据处理、报表生成和数据分析等。本篇文章将详细探讨C#如何实现Excel的导入导出功能。 首先,我们需要知道在C#中操作Excel有两种主要方式:一是使用Microsoft.Office.Interop....
在提供的压缩包文件中,可能包含已经封装好的方法和DLL,这些预封装的方法简化了Excel导入导出的过程,使得开发者可以直接调用,而无需关心底层的实现细节。这通常会提高开发效率,减少错误,并且便于代码维护。 ...
"普元导入导出"是普元信息公司提供的一个功能模块,主要应用于数据的批量导入与导出,尤其适用于与Excel文件的交互。这个功能在数据管理、数据分析以及日常业务处理中十分常见,因为它能够方便地将大量结构化数据在...
在处理数据导入导出方面,Struts2提供了强大的支持,特别是与Excel文件的交互。本教程将深入探讨如何利用Struts2实现从Oracle数据库导出数据到Excel,以及如何将Excel文件中的数据导入到Oracle。 首先,我们需要...
在Java开发中,处理Excel数据是一项常见的任务,无论是读取大量数据进行分析,还是批量导入导出信息。这里我们关注的是两个主要的库:jxl和Apache POI,它们都是用于处理Excel文件的强大工具。 首先,让我们深入...
在Java编程领域,实现Excel的导入导出功能是一项常见的任务,尤其在数据分析、报表生成以及数据交换等场景中。本文将深入探讨如何使用Java来处理Excel文件,包括读取、写入以及转换Excel数据。 首先,Java实现Excel...
在给定的标题“Excel导入导出,ASP”和描述中,我们可以看出这是一个关于如何在ASP环境中利用编程技术实现Excel与Access之间数据交换的教程。下面我们将详细探讨这些知识点。 首先,Excel是一种强大的电子表格工具,...