一、下载jruby二进制安装包,解压到相应的目录下,并将其bin目录添加到系统 的PATH变量中,则完成了安装;
二、安装java,完成安装后创建系统变量JAVA_HOME,把java的安装目录设为其值;
三、在dos窗口中运行jirb_swing,出现相应的界面,那么你的jruby就成功安装了;
四、下载jxl.jar,放到某一个目录下,并在系统的CLASSPATH变量中把它添加到其中;
五、现在就可以操作excel了,下面是一个简单的实例:
require "java"
include_class "jxl.Workbook"
include_class "jxl.write.Label"
include_class "jxl.write.WritableSheet"
include_class "jxl.write.WritableWorkbook"
file=java.io.File.new("D:\\test.xls")
book=Workbook.createWorkbook(file)
sheet=book.createSheet("表格1",0)
label=Label.new(0,0,"世界,你好!")
sheet.addCell(label)
book.write
book.close
这样,一个简单的操作excel的程序就写出来了。
当然你也可以用ruby的win32ole包,但是要复杂的多,如下一例:
require 'win32ole'
excel = WIN32OLE::new('excel.Application')
workbook = excel.Workbooks.Open('E:\RubyApp\bmk.xls')
worksheet = workbook.Worksheets(1) #get hold of the first worksheet
worksheet.Select #bring it to the front -need sometimes to run macros, not for working with a worksheet from ruby
#excel['Visible'] = true #make visible, set to false to make invisible again. Don't need it to be visible for script to work
#value1=worksheet.Range('a12')['Value'] #get value of single cell
#puts value1
#data = worksheet.Range('a1:c12')['Value'] #read into 2D array
#data.each do |data1|
#data1.each do |data2|
#puts data2
#end
#end
line = '1'
while worksheet.Range("c#{line}")['Value']
line.succ!
end #line now holds row number of first empty row
puts line
#i=3
#puts worksheet.cells(i-1,1).text[8,16].to_i+1
#处理准考证号,让它自动增加
#while i < line.to_i
for i in 3...line.to_i
worksheet.cells(i,1).value="00320501"+(worksheet.cells(i-1,1).text[8,15].to_i + 1).to_s
worksheet.cells(i,2).value="320501"+(worksheet.cells(i-1,2).text[6,13].to_i + 1).to_s
if worksheet.cells(i,7).text.length==18
worksheet.cells(i,5).value=worksheet.cells(i,7).text[6,8]
else
worksheet.cells(i,5).value="19"+worksheet.cells(i,7).text[6,6]
end
worksheet.range("h#{i}").value=worksheet.range("h#{i-1}").value.to_s
worksheet.range("i#{i}").value=worksheet.range("i#{i-1}").value.to_s
worksheet.range("k#{i}").value=worksheet.range("k#{i-1}").value.to_s
worksheet.range("l#{i}").value=worksheet.range("l#{i-1}").value.to_s
worksheet.range("o#{i}").value=worksheet.range("o#{i-1}").value.to_s
worksheet.range("p#{i}").value=worksheet.range("p#{i-1}").value.to_s
worksheet.range("q#{i}").value=worksheet.range("q#{i-1}").value.to_s
worksheet.range("r#{i}").value=worksheet.range("r#{i-1}").value.to_s
worksheet.range("s#{i}").value=worksheet.range("s#{i-1}").value.to_s
# i=i+1
end
#worksheet.Range('e2')['Value'] = Time.now.strftime '%d/%m/%Y' #single value
#worksheet.Range('a5:c5')['Value'] = ['Test', '25', 'result']
#value2 = worksheet.range("b6").value
#puts value2
workbook.Close(1)
excel.Quit
excel = nil
GC.start
分享到:
相关推荐
NULL 博文链接:https://renzhen.iteye.com/blog/689432
本文介绍了如何用JRuby开发Web Service。用JRuby开发Web Service,需要安装ActionWebService。安装完毕之后便可以开始调用及部署了。
本文介绍了JRuby的安装与配置。JRuby的安装需要JRuby以及JDK,本文使用的版本分别是JRuby 1.1.2以及Java 1.6。至于JRuby配置,文章主要介绍了测试JRuby安装的方法。
jruby是一个ruby的解析器,可将ruby解析为java文件,jruby作为ruby解析器时刻调用java代码
jruby安装包 和 jruby的lib库 JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让...
jruby-src-1.0.zip
jruby-1.3.1.jar包 解决org.jruby.exceptions.JumpException 等报错
jruby-complete-1.7.19.jar,java版本的ruby解析器
org.jruby.rar
jruby-bin-1.3.1.zip 用于jruby语言研发的必要工具
JRuby window X64 开发软件
This book introduces you to three JRuby deployment strategies that give you the performance and scalability you need, while you use a language designed for rapid development. Explore common ...
jruby与java使用开发,听说jruby能是swing的调用变为更简单
JRuby在Java测试中的应用,使用脚本语言,高效快进行Java程序测试。
jRuby On Rails WEB 2.0
JRuby语言实战技术,java下运用ruby
jruby 1.9.6 win64
jruby-1.5.5+OperaWatir+RSpec
对于Jruby、Jython和Groovy三种动态语言,长期以来很多人犹豫于如何选择它们。本文提出一个非常有力的例证证明:如果你是一个基于Java虚拟机的开发者,那么请放弃Jruby和Jython。
Now you can bring the best of Ruby into the world of Java, with Using JRuby. Come to the source for the JRuby core team’s insights and insider tips. You’ll learn how to call Java objects seamlessly ...