免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Watir 1.6.5中文支持總結(jié) | Wayne Deng's Blog

Watir 1.6.5中文支持總結(jié)

Watir對中文缺乏原生的支持,就算是最新的版本,使用中文也會(huì)出現(xiàn)亂碼、方塊的現(xiàn)象。

Google了許久,最佳的解決方案是來自于:http://jonny131.javaeye.com/blog/654160

修改 c:\ruby\lib\ruby\gems\1.8\gems\watir-1.6.5\lib\watir\win32ole.rb 文件中的下面代碼WIN32OLE.codepage = WIN32OLE::CP_UTF8
修改為
WIN32OLE.codepage =  WIN32OLE::CP_ACP

PS:只能修改該文件,在調(diào)用Watir的代碼中設(shè)置OLE的codepage測試無效。

另外一種方式來自于:http://www.cnblogs.com/slaughter/archive/2007/10/18/929385.htmlhttp://www.blogjava.net/raimundox/archive/2006/01/11/27549.html

1.打開watir.rb
2.在class TextField中加入一個(gè)新的method:
def characters_in(value)
index = 0
while index < value.length
len = value[index] > 128 ? 2 : 1
yield value[index, len]
index += len
end
end

3.更改class TextField的doKeyPress( value )方法部分代碼,將下面代碼
——————————————-
for i in 0 .. value.length-1
sleep @container.typingspeed
c = value[i,1]
@container.log ” adding c.chr ” + c
@o.value = @o.value.to_s + c
@o.fireEvent(“onKeyDown”)
@o.fireEvent(“onKeyPress”)
@o.fireEvent(“onKeyUp”)
end

替換為如下代碼
characters_in(value) {|c|
sleep @container.typingspeed
@o.value = @o.value.to_s + c
@o.fireEvent(“onKeyDown”)
@o.fireEvent(“onKeyPress”)
@o.fireEvent(“onKeyUp”)
}

http://rubyforge.org/tracker/index.php?func=detail&aid=3232&group_id=104&atid=489,可以下載到watir_cn的補(bǔ)丁。

這兩種方式測試都是有效的。
發(fā)現(xiàn)無論瀏覽器中頁面的編碼是GBK或者UTF-8,通過OLE傳入IE的都必須為GBK的字符才行。試圖設(shè)置WinOLE的codepage為utf8,并傳入utf8的中文字符完全不可行!因此在使用Watir的時(shí)候,得把所有UTF8的中文轉(zhuǎn)換成GBK先。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
?。?!Ruby應(yīng)用httpwatch進(jìn)行前端頁面自動(dòng)化
CODEPAGE=936是什么意思?
中文字符集和中文編碼 | 阿四的日志
字符集與編碼問題小結(jié)
編碼utf-8亂碼問題集錦
解決:javadoc生成出現(xiàn)錯(cuò)誤“編碼 GBK 的不可映射字符”
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服