在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
GBK和UTF-8的转换
# utf8 to gbk
这是一个比较不错的从utf-8转换为gbk编码的方法 在网络上抓取的信息 可使用这个方法转换def u2g(ucode) begin "#{Iconv.conv('gbk','utf-8',ucode)}" rescue " #{ucode} " #如果转换不成功 则不转换 并在字串两边加入空格 避免构造出错误的sql字符串 end end RUBY DBI ruby和sqlserver交互的时候 使用dbi是一个不错的选择 dbi有两个比较重要的方法,一个是execute方法,会返回一个结果集,一个是do方法,do方法不会返回结果集,也不会返回受影响的行数,do方法是提交一个事务,而commit方法可以将之前所有使用do方法提交的事务执行,commit会返回受影响的行数。 需要注意的是,如果使用do方法插入一条数据,而没有commit直接disconnect了,将会导致这条数据插入数据库又被删除,因为你这个时候再插入一条新的数据发现,自增长的主键,被空出一个位置来,比如从3一下跳到了5,所以不要忘记commit。 Net::HTTP Net::HTTP::new方法可以支持4个参数的重载,比如 req = Net::HTTP.new 'xxxxxx.com',80,'proxy.com',8080 第三个和第四个参数是指定代理服务器 第二个参数指定端口 不写的话默认80 File类的某些方法需要包括'win32/file' 有些方法不能使用,是因为没有包含win32/file库
require 'win32/file'
File.archive? 'c:/boot.ini' 请求URI的时候 使用URI::encode转换一下 从uri读到的数据写入本地的时候 使用binmode模式
require 'open-uri'
uri = 'http://xxx.com/中文.rar' data = open(URI::encode(uri)){|f| f.read} file = File.new uri[uri.rindex('/') + 1..uri.length-1], 'w+' file.binmode file << data file.flush file.close 执行sql语句的时候 务必替换特殊字符
name = "lee's book"
sql = "update tb_files set [name] = #{name.gsub("'","''")}" RUBY脚本后缀名改为.rbw即可在执行时不显示控制台 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论