ruby导出exl方式
class Demo
print "hello world" require "spreadsheet"
#设置表格的编码为utf-8
Spreadsheet.client_encoding="utf-8"
#创建表格对象
book=Spreadsheet::Workbook.new #创建工作表
sheet1=book.create_worksheet :name => "test1" #定义一个样式
format=Spreadsheet::Format.new :color => :blue, :weight => :bold, :size => 20 #修改样式
#sheet1.row(0).set_format(0,format) #第一行第一列单元格设置样式
sheet1.row(0).set_format(1,format) #第一行第二列单元格设置样式
#sheet1.row(1).set_format(0,format) #第一行第二列单元格设置样式 #sheet1.row(1).default_format=format #第一行所有单元格设置样式 #在表格第一行设置分类
sheet1.row(0)[0]="姓名"
sheet1.row(0)[1]="爱好"
sheet1.row(0)[2]="国家"
5.times do |i|
#sheet1.row(i).set_format(0,format) #前5行的 第一列全部设置样式
sheet1.row(i+1)[0]="张山#{i}"
sheet1.row(i+1)[1]="爱好#{i}"
sheet1.row(i+1)[2]="国家#{i}"
end
#在指定路径下面创建test1.xls表格,并写book对象
book.write "#{Dir.pwd}/../../public/test1.xls" print "#{Dir.pwd}" #当前文件夹的路径 end 运行方式
cmd进入文件位置 ruby demo.rb
首先要安装插件
Spreadsheet
ruby install spreadsheet
class Demoprint "hello world"
require "spreadsheet" #设置表格的编码为utf-8 Spreadsheet.client_encoding="utf-8" #创建表格对象 book=Spreadsheet::Workbook.new
#创建工作表 sheet1=book.create_worksheet :name => "test1"
#定义一个样式format=Spreadsheet::Format.new :color => :blue, :weight => :bold, :size => 20
#修改样式#sheet1.row(0).set_format(0,format) #第一行第一列单元格设置样式sheet1.row(0).set_format(1,format) #第一行第二列单元格设置样式#sheet1.row(1).set_format(0,format) #第一行第二列单元格设置样式
#sheet1.row(1).default_format=format #第一行所有单元格设置样式
#在表格第一行设置分类sheet1.row(0)[0]="姓名" sheet1.row(0)[1]="爱好" sheet1.row(0)[2]="国家" 5.times do |i| #sheet1.row(i).set_format(0,format) #前5行的 第一列全部设置样式 sheet1.row(i+1)[0]="张山#{i}" sheet1.row(i+1)[1]="爱好#{i}" sheet1.row(i+1)[2]="国家#{i}" end #在指定路径下面创建test1.xls表格,并写book对象 book.write "#{Dir.pwd}/../../public/test1.xls"
print "#{Dir.pwd}" #当前文件夹的路径
end
ruby导出exl方式的更多相关文章
- NPOI _导出exl(简单应用)
1. 导出exl表格,创建表格导出到客户端 public static MemoryStream Export_Table<T>(List<T> datalist) { Mem ...
- 报表导出excel方式介绍
报表导出excel提供了四种方式,在单元格属性"其他/导出excel方式"可以选择,如下图 一是导出缺省值:报表中的单元格包含两个值,一个真实值一个显示值,但是在excel中 ...
- Hive三种不同的数据导出的方式
转自:http://blog.chinaunix.net/uid-27177626-id-4653808.html Hive三种不同的数据导出的方式,根据导出的地方不一样,将这些方法分为三类:(1)导 ...
- ES5与ES6常用语法教程之 ①函数写法、创建对象、导入导出模块方式
函数写法区别 计算a, b两个数字之和,有返回值 es5 写法 function add(a, b) { return a + b; } es6 写法(箭头函数) let add = (a, b) = ...
- [redis] 几种redis数据导出导入方式
环境说明: 172.20.0.1 redis源实例 172.20.0.2 redis目标实例 172.20.0.3 任意linux系统 一.redis-dump方式 1.安装redis-dump工具 ...
- 三种redis数据导出导入方式
推荐博客链接:https://www.cnblogs.com/hjfeng1988/p/7146009.html https://blog.csdn.net/qq_14945847/article/d ...
- redis几种数据导出导入方式
一.redis-dump方式 1.安装redis-dump工具 [root@172.20.0.3 ~]# yum install ruby rubygems ruby-devel -y 更改gem源 ...
- 关于poi导出excel方式HSSFWorkbook(xls).XSSFWorkbook(xlsx).SXSSFWorkbook.csv的总结
1.HSSFWorkbook(xls) import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermo ...
- es6 import export 引入导出变量方式
var testdata='sdfkshdf'; //export testdata;//err export {testdata as ms}; export var firstName = 'Mi ...
随机推荐
- vue 项目引入字体报错
vue 项目引入特殊字体,总是提示有问题 原因是,在webpack 里面的配置有问题 在项目文件里面引入字体的时候,应该写url-loader 而不能是url
- Qt__输入对话框(QInputDialog)
#include <QInputDialog> ...... bool isOK; QString text = QInputDialog::getText(NULL, "Inp ...
- python 协程库gevent学习--gevent数据结构及实战(四)
一不留神已经到第四部分了,这一部分继续总结数据结构和常用的gevent类,废话不多说继续. 1.Timeout错误类 晚上在调试调用第三方接口的时候,发现有些接口耗时非常多,觉得应该有个超时接口来限制 ...
- JQuery从入门到精通
1.JQuery查找元素 例:将表格的单元格中件数和重量差异不为0的数据标红 代码如下: <style> .notice{ color: red; } .right{ color: gre ...
- 如何禁止复制电脑文件到U盘、禁止U盘拷贝文件
在公司局域网中,有时候我们处于保护电脑文件安全和商业机密的需要,会禁止局域网电脑使用U盘.禁用USB存储设备:或者禁止通过U盘复制电脑文件.禁止U盘拷贝公司电脑文件.那么,怎样实现呢?本文提供两种方法 ...
- \r\n
转载自http://www.studyofnet.com/news/285.html '\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格,通常敲一个回车键,即是回车,又是换行(\r\ ...
- Python连接字符串用join还是+
我们先来看一下用join和+连接字符串的例子 str1 = " ".join(["hello", "world"]) str2 = &quo ...
- BZOJ2938[Poi2000]病毒——AC自动机
题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段,试问,是否 ...
- Harmonic Number LightOJ - 1234 (分段打表)
题意: 求调和级数,但n很大啦.. 解析: 分段打表 每间隔50存储一个数,在计算时 只需要找到离输入的n最近的那个数 以它为起点 开始计算即可 emm...补充一下调和级数的运算公式 r为常 ...
- Cuba项目配置IDEA,如何dubug
1.在cuba中编辑端口,如下图: 2.在IDEA中添加一个远程链接,添加为对应的端口号,然后运行debug即可 如果两个端口号不对应,就会报出以下的错误:unable to open debugge ...