在获取网页时半角全角字符混合的问题

在获取网页数据时,遇到一个问题。获取的数据在解析成中文时由于字符中包含半角和全角的字符,总是不能全部显示正确。一开始总想有什么解析方法可以用来处理这种数据。网页本身是utf-8格式,按理来说不应该有这个问题。后来发现是Dotnet中WebClient类默认会将中文转成gb2312。此时与原始的utf-8的数据相比,数据已有丢失,所以我判断再怎么恢复也不行(但不确定)。那WebClient有该属性配置么?果然!将Encoding属性设为utf-8就从头上解决了这个问题。回想之前在用扫码仪获取二维码中文时也遇到这个问题,也许也有相应的解决方法。

时间: 2024-10-23 16:48:57

在获取网页时半角全角字符混合的问题的相关文章

python 实现 全角字符 传转换成 半角字符串

Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> def strQ2B(ustring): #把全角字符串转半角 ustring=ustring.decode("cp9

Java 全角字符转半角字符

1.java代码里有时候会遇到代码注入的安全问题,为了防止这种问题,增加了一个过滤功能.主要是过滤全角字符,把url不能识别的全角字符转换成半角字符 1 public class Test { 2 public static void main(String[] args) { 3 String t="■ ■ffac●●△※○○☆№ccc"; 4 System.out.println(t); 5 System.out.println(toSemiangle(t)); 6 } 7 8 /

全角字符转换半角字符原来

/** * 全角空格为12288,半角空格为32 * 其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248 * * 将字符串中的全角字符转为半角 * @param src 要转换的包含全角的任意字符串 * @return  转换之后的字符串 */ public static String toSemiangle(String src) { char[] c = src.toCharArray(); for (int index = 0; index < c.

java 非法字符过滤 , 半角/全角替换

java 非法字符过滤 , 半角/全角替换 package mjorcen.netty.test1; import java.io.UnsupportedEncodingException; public class CharByteConverter { /** * 全角转半角 * * @param str * @return * * @author mjorcen * @email [email protected] * @dateTime Sep 27, 2014 2:51:50 PM *

java 全角字符半角字符转换

[java] view plaincopy /// <summary> /// 判断字符是否英文半角字符或标点 /// </summary> /// <remarks> /// 32    空格 /// 33-47    标点 /// 48-57    0~9 /// 58-64    标点 /// 65-90    A~Z /// 91-96    标点 /// 97-122    a~z /// 123-126  标点 /// </remarks> pu

java代码验证用户名,支持中英文(包括全角字符)、数字、下划线和减号 (全角及汉字算两位),长度为4-20位,中文按二位计数

package com.sangedabuliu.www; import java.util.regex.Matcher; import java.util.regex.Pattern; public class UserReg { /** * 验证用户名,支持中英文(包括全角字符).数字.下划线和减号 (全角及汉字算两位),长度为4-20位,中文按二位计数 * @author www.sangedabuliu.com * @param userName * @return */ public

认识全角字符

简单地说一个汉字就是一个全角的,它顶两个半角字符的宽窄. 全角指一个字符占用两个标准字符位置,全角字符占用2个字节位置. 汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符.一般的系统命令是不用全角字符的,只是在作文字处理时才会使用全角字符. 半角指一字符占用一个标准的字符位置,通常的英文字母.标点符号.特殊符号等. 1.全角字符与半角字符应用上区别 输入阿拉伯数目字.英文字母.标点符号.特殊符号,这些只需要占1个字节的一般用半角输入.用全角输入每两个字节之

什么是全角字符

就是太阳和月亮的区别,键盘上有! 你可以用 shift + 空格 键来切换全角和半角 或者用英文输入 简单地讲,全角字符占用2个字符位置,半角字符占用1个字符位置. 他们在应用上的区别主要表现在输入阿拉伯数目字.英文字母.标点符号.特殊符号,这些只需要占1个字符位的一般用半角输入.如果用全角输入的话,每两个字符之间就会产生一个空格.一般网站的注册名.密码都是用字母加数目字,如果用全角输入就会产生错误. 每个汉字都占用2个字符,所以不管你用全角还是半角输入都是一样的. 全角.半角的设置:输入法指示

[小技巧] Windows7 半角全角快捷键 修改方法

From : http://blog.sina.com.cn/s/blog_87ab67b10100x3ww.html 转载说明:在浏览器下我们可以使用空格下翻一页,Shift + 空格上翻一页. 但是Shift + 空格在中文输入法被定义为全角/半角转换.但是在输入法里这是被写死了, 通过下面的方法可以将其设成左Alt+shift+F10,这样中文输入法里也可以使用Shift + 空格上翻一页了. Windows7 下 输入法全半角快捷键 默认为 shift+空格. 很容易误按,但用"文本服务