在我們使用搜狗輸入法的時候會有全形和半形的切換,首先看一下這兩者的區別吧
全形,指乙個字元占用兩個標準字元位置的狀態,也是排字的度量單位,寬度等於所使用的文字的磅數漢。
半形,即乙個字元占用乙個標準字元的位置,排字的量度單位,寬度等於同一磅數全形的一半。
全形和半形的使用
1、在中文輸入法中,切換全形和半形格式的快捷鍵為shift+空格。
2、一般的系統命令是不用全形字符的,只是在作文書處理的時候才會使用全形字符。
3、在程式設計序的源**中只能使用半形標點,但是字串內部的資料可以使用全形字符或者全形標點。
4、在不支援漢字等語言的計算機上只能使用半形標點。其實,在這種情況下根本就不存在全形半形的概念了。
5、在漢字輸入法中,輸入的字母數字預設為半形,但是標點則是預設為全形。
6、在進行中文處理時,漢字和標點符號使用全形,字母、其它符號和數字使用半形。即王碼五筆字體中的預設輸入狀態就是。
但是我們在日常開發的過程中可能需要對輸入的字元進行校驗,規則只能是全形字符或者是半形字元,這樣我們就需要對校驗的字元進行裝換,所以才有了這篇文章。
/**
* @author 2019/6/23 16:49
*/public class characterutil
stringbuilder buf = new stringbuilder(src.length());
char ca = src.tochararray();
for (char c : ca) else if ((c >= dbc_char_start) && (c <= dbc_char_end)) else
}return buf.tostring();
}/**
** 全形字符->半形字元轉換
* 只處理全形的空格,全形!到全形~之間的字元,忽略其他
*
*/
private static string **2bj(string src)
stringbuilder buf = new stringbuilder(src.length());
char ca = src.tochararray();
for (char c : ca) else if (c >= sbc_char_start && c <= sbc_char_end) else
}return buf.tostring();
}public static void main(string args)
}
connected to the target vm, address: '127.0.0.1:61997', transport: 'socket'
gsrtt art j r sfweegarv 哈哈哈==gsrtt art j r sfweegarv 哈哈哈
erg ddca sdvdv777774aaa好啊 好啊==erg ddca s***v777774aaa好啊 好啊
11== 11
11== 11
gsrtt art j r sfweegarv 哈哈哈==gsrtt art j r sfweegarv 哈哈哈
erg ddca sdvdv777774aaa好啊 好啊==erg ddca sdvdv777774aaa好啊 好啊
11== 11
11== 11
disconnected from the target vm, address: '127.0.0.1:61997', transport: 'socket'
全形字符轉換為半形,判斷半形和全形
判斷字元是否英文半形字元或標點 32 空格 33 47 標點 48 57 0 9 58 64 標點 65 90 a z 91 96 標點 97 122 a z 123 126 標點 public static bool isbjchar char c 判斷字元是否全形字符或標點 全形字符 65248...
SQL 全形和半形轉換
首先我們來看乙個測試 select cast 111 asint as num1 code ifobject id n u convert n fn isnot null drop function u convert go 轉換原理 全形字符unicode編碼從65281 65374 半形字元un...
C 全形和半形轉換
在計算機螢幕上,乙個漢字要佔兩個英文本元的位置,人們把乙個英文本元所佔的位置稱為 半形 相對地把乙個漢字所佔的位置稱為 全形 在漢字輸入時,系統提供 半形 和 全形 兩種不同的輸入狀態,但是對於英文本母 符號和數字這些通用字元就不同於漢字,在半形狀態它們被作為英文本元處理 而在全形狀態,它們又可作為...