W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-08-13 #1 我想判断输入的字节数。 因为 当用到中文字符串时 所限制的字节数就会突破 写到库里就会出问题 请问有没有好的解决方式???
G GWW Unregistered / Unconfirmed GUEST, unregistred user! 2000-08-14 #2 do cument.formname.textname.value.length ?
P Pipi. Unregistered / Unconfirmed GUEST, unregistred user! 2000-08-14 #3 document.formname.textname.value..substr(0, 最大长度) 不管你的字符串是什么都直接执行一下就可以,要是原来就是小于“最大长度”, 那返回的还是原来的,要是长了,就截断他。 另外长度是用document.formname.textname.value.length 判断
document.formname.textname.value..substr(0, 最大长度) 不管你的字符串是什么都直接执行一下就可以,要是原来就是小于“最大长度”, 那返回的还是原来的,要是长了,就截断他。 另外长度是用document.formname.textname.value.length 判断
A Atomic Unregistered / Unconfirmed GUEST, unregistred user! 2000-08-15 #4 function asdf{ document.formname.textname.value..substr(0, 最大长度) } . . . id=a1 onchange=call asdf(this) something like this
function asdf{ document.formname.textname.value..substr(0, 最大长度) } . . . id=a1 onchange=call asdf(this) something like this
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-01 #5 to Pipi. do cument.formname.textname.value.substr(0, 最大长度) 得出的结果亦不是想要的。 例1, textname.value="1234567890" textname.value.substr(0,6) 得出的将是 "123456" 例2, textname.value="一二三四五六七八九十" textname.value.substr(0,6) 得出的将是 "一二三四五六" 而这并不是我想要的,我只想取最大6个字节的东东,要存入数据库 有汉字的情况,却办不到。 如何解决??
to Pipi. do cument.formname.textname.value.substr(0, 最大长度) 得出的结果亦不是想要的。 例1, textname.value="1234567890" textname.value.substr(0,6) 得出的将是 "123456" 例2, textname.value="一二三四五六七八九十" textname.value.substr(0,6) 得出的将是 "一二三四五六" 而这并不是我想要的,我只想取最大6个字节的东东,要存入数据库 有汉字的情况,却办不到。 如何解决??
B bk Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-01 #6 s1,s2 : string; sTemp : array [1..6] of char ; begin s2 := '中国人民很行!'; for i:= 1 to 6 do begin sTemp := s2 end; 这样太笨了吧?
s1,s2 : string; sTemp : array [1..6] of char ; begin s2 := '中国人民很行!'; for i:= 1 to 6 do begin sTemp := s2 end; 这样太笨了吧?
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-01 #7 to bk: 也许是我不懂你的意思 不过,我还是认为是你不懂我的意思 嘻嘻,得罪了 哪位仁兄帮忙,解决一下 do cument.formname.textname.length 10个汉字和10个英文字母和(5个汉字+5个英文字母)的长度居然都是10!!
to bk: 也许是我不懂你的意思 不过,我还是认为是你不懂我的意思 嘻嘻,得罪了 哪位仁兄帮忙,解决一下 do cument.formname.textname.length 10个汉字和10个英文字母和(5个汉字+5个英文字母)的长度居然都是10!!
A Atomic Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-01 #8 ?????? 从来没有遇见过这种事情!! 还是用DOS吧^_^,保证可靠!! 转入正题,我用VBScript做的,有没有关系?(JAVA太差了^^^) <a href="http://atom.heha.net/test.htm" target="_blank">这是我的例子</a> 自己看源代码吧,主要是用了 ASC(MID(TXT,I,1) 如果不是 单子节会产生负数的原理,哈哈 DEBUG. 可以了吧?
?????? 从来没有遇见过这种事情!! 还是用DOS吧^_^,保证可靠!! 转入正题,我用VBScript做的,有没有关系?(JAVA太差了^^^) <a href="http://atom.heha.net/test.htm" target="_blank">这是我的例子</a> 自己看源代码吧,主要是用了 ASC(MID(TXT,I,1) 如果不是 单子节会产生负数的原理,哈哈 DEBUG. 可以了吧?
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-02 #9 to atomic: 我也没想到会这么让人为难, 居然让你想到了vbscript ...转入正题 既然vbscript能做,javascript会做不了? javascript中有没有类似asc(mid(txt,i,1))的函数?
to atomic: 我也没想到会这么让人为难, 居然让你想到了vbscript ...转入正题 既然vbscript能做,javascript会做不了? javascript中有没有类似asc(mid(txt,i,1))的函数?
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-02 #10 Ok,不用vbscript啦 用javascript中的 string.charCodeAt(i)来得到第i个字符对应的整数代码 然后判其是不是大于127就可以了 但是,很奇怪,我用的是win2000,ie是 5.00.2920.0000 显示的汉字的整数代码都是5位的, 如 "气死我啦".charCodeAt(0)=27668 "气死我啦".charCodeAt(0)=27515 "气死我啦".charCodeAt(0)=25102 "气死我啦".charCodeAt(0)=21862 是所谓的Unicode标准吧,也许! 这样的话,判长度就可以做个循环啦 function judgebytelen(valstr,maxlen) { var len=valstr.length; for(var i=0;i<valstr.length;i++) { if(valstr.charCodeAt(i)>127)len++; } if(len>maxlen)alert("太贪心了吧!"); } ok,搞掂,是不是也该给自己点儿分呀,嘻嘻
Ok,不用vbscript啦 用javascript中的 string.charCodeAt(i)来得到第i个字符对应的整数代码 然后判其是不是大于127就可以了 但是,很奇怪,我用的是win2000,ie是 5.00.2920.0000 显示的汉字的整数代码都是5位的, 如 "气死我啦".charCodeAt(0)=27668 "气死我啦".charCodeAt(0)=27515 "气死我啦".charCodeAt(0)=25102 "气死我啦".charCodeAt(0)=21862 是所谓的Unicode标准吧,也许! 这样的话,判长度就可以做个循环啦 function judgebytelen(valstr,maxlen) { var len=valstr.length; for(var i=0;i<valstr.length;i++) { if(valstr.charCodeAt(i)>127)len++; } if(len>maxlen)alert("太贪心了吧!"); } ok,搞掂,是不是也该给自己点儿分呀,嘻嘻
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-02 #12 哎,老是忘了小于号,幸亏回头看了一眼 function judgebytelen(valstr,maxlen) { var len=valstr.length; for(var i=0;i 小于 valstr.length;i++) { if(valstr.charCodeAt(i) 大于 127)len++; } if(len 大于 maxlen)alert("太贪心了吧!"); }
哎,老是忘了小于号,幸亏回头看了一眼 function judgebytelen(valstr,maxlen) { var len=valstr.length; for(var i=0;i 小于 valstr.length;i++) { if(valstr.charCodeAt(i) 大于 127)len++; } if(len 大于 maxlen)alert("太贪心了吧!"); }
P Pipi. Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-03 #13 vbs和js的字符串都是用unicode,就是说英文、中文都是2个字节。 如果用数据库access,也是用unicode,比如,char(10),不管中英文都是 能放10个字。 但是,如果在其他数据库不是这样,你就可以在数据库里面substr, 比如: insert into ..... values (...., substr(filedX,1,最大字节数), ...)
vbs和js的字符串都是用unicode,就是说英文、中文都是2个字节。 如果用数据库access,也是用unicode,比如,char(10),不管中英文都是 能放10个字。 但是,如果在其他数据库不是这样,你就可以在数据库里面substr, 比如: insert into ..... values (...., substr(filedX,1,最大字节数), ...)
W Walone Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-03 #14 噢,不错,在oracle中可以用substrb的 不过,我很担心这样一截,万一出现半个汉字怎么办? 好象还是得判每个字符是两个字节还是一个字节吧