免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
最近访问板块 发新帖
查看: 12364 | 回复: 1

`gsub': invalid byte sequence in GBK (ArgumentError) [复制链接]

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-06-12 06:20:00
发表于 2017-04-20 22:25 |显示全部楼层
本帖最后由 yakczh_cu 于 2017-04-20 22:51 编辑

  1. # encoding: UTF-8
  2. require 'hpricot'

  3. content='''
  4. <div class="bdsharebuttonbox">
  5.       <a href="#"   title="分享到新浪微博">新浪微博</a>
  6. </div>

  7. '''

  8. doc = Hpricot(content)

  9. (doc/"a").each do |x|
  10.   puts x  
  11. end
复制代码

报错    `gsub': invalid byte sequence in GBK (ArgumentError)
根据提示找到 /lib/hpricot/tag.rb:32行
"\"" + str.gsub('"', '\\"') + "\"" 好象是gsub的问题

  1. arr = content.split("\n")

  2. puts arr.length
  3. arr.each do |x|
  4. puts   "\"" + x.gsub('"', '\\"') + "\""
  5.    
  6. end

复制代码

但是单独用gsub又没问题




论坛徽章:
3
寅虎
日期:2013-11-27 07:53:29申猴
日期:2014-09-12 09:24:152015年迎新春徽章
日期:2015-03-04 09:48:31
发表于 2018-09-14 16:48 |显示全部楼层
windows下面代码里的字符串是 GBK 的?另存为UTF-8试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP