在我的应用程序中,我有一个接受unicode字符/非unicode字符的文本框。
如果输入任何unicode字符,则应以最大长度15验证它。
如何区分c#中文本框中输入的普通文本和unicode文本?是否需要任何额外的长度,如 sql server varchar和nvarchar大小各不相同。
<asp:TextBox ID=txtInput runat="server" MaxLength="15" TextMode="MultiLine">
</asp:TextBox>
如何针对unicode字符限制文本框的长度? 我是否需要为unicode和非unicode字符串指定单独的最大长度,以使其不超过15?
答案 0 :(得分:1)
如何区分文本框中输入的普通文本和unicode文本?
string text = txtInput.Text;
foreach (char c in text)
{
int unicode = c
if (unicode > 128)
Console.WriteLine("character is unicode" + unicode);
}
然后你可以验证你想要的角色或任何东西。
答案 1 :(得分:0)
使用nvarchar
或varchar
,您不需要为Unicode使用另一个最大长度。
如果使用varchar
,则任何Unicode字符都将被视为非Unicode,并且计数不会有所不同。
如果你使用nvarchar
,那么任何char都会考虑使用Unicode,并且计数也不会有所不同。