Cod*_*ile 18 vb.net string unicode designer
我知道你可以将unicode字符代码放在VB.Net字符串中,如下所示:
str = Chr(&H0030) & "More text"
Run Code Online (Sandbox Code Playgroud)
我想知道如何将char代码直接放入字符串文字中,以便我可以使用设计器视图中的unicode符号.
这甚至可能吗?
小智 27
使用该ChrW()
函数返回Unicode字符.
Dim strW As String
strW = ChrW(&H25B2) & "More text"
Run Code Online (Sandbox Code Playgroud)
Han*_*ant 14
C#语言通过转义支持这个:
var str = "\u0030More text";
Run Code Online (Sandbox Code Playgroud)
但这在VB.NET中不可用.要注意的是,你几乎肯定不希望使用CHR(),这是为遗留代码与默认代码页的作品.您需要ChrW()并传递Unicode代码点.
您的具体示例不是问题,&H0030是"0"的代码,因此您可以直接将其直接放在字符串文字中.
Dim str As String = "0MoreText"
Run Code Online (Sandbox Code Playgroud)
您可以使用Charmap.exe实用程序来复制和粘贴没有简单ASCII码的字形.
小智 7
用 Convert.ToChar 替换 Chr:
str = Convert.ToChar(&H0030) & "More text"
Run Code Online (Sandbox Code Playgroud)
要显示 Unicode 字符,可以使用以下语句
\n\nChrW(n)
其中n
是代表 Unicode 字符的数字。Convert.ToChar(n)
Alt + N
使用组合键在编辑器中直接输入字符Char.ConvertFromUtf32(n)
&#x....;
语法分配 \xe2\x99\xa5 字符的示例:
\n\ns = ChrW(&H2665)\ns = Convert.ToChar(&H2665) \ns = "\xe2\x99\xa5" \'in typing Alt+2665\ns = "\xe2\x99\xa5" \'using paste/copy of \xe2\x99\xa5 from another location\ns = Char.ConvertFromUtf32(&H2665)\ns = <text>I ♥ you</text>\n
Run Code Online (Sandbox Code Playgroud)\n\n但是当 Unicode 字符大于0xFFFF时(C 语法更具可读性)时,只有方法 4、5 和 6 有效!
\n\nChrW()
函数指示构建时出现错误Convert.ToChar()
函数在运行时崩溃例子
\n\nlblCharacter.Text = "This solution works "\nDebug.Print (Char.ConvertFromUtf32(&H1F600))\ns = <text>diable: 😈</text>\n
Run Code Online (Sandbox Code Playgroud)\n\nPS:直接在Visual Studio代码编辑器或Notepad++中粘贴的笑脸(0x1F600)已经失去了背景颜色!说明:此答案中粘贴的笑脸由橙色填充,但在 Visual Studio 编辑器或 Notepad++ 中,该颜色已消失!
\n\n要在 Visual Studio 编辑器中使用字符串文字,您必须使用方法 3 或 4 !
\n\n形式(设计模式)
\n\n\n\n在属性中(请参阅文本属性)
\n\n\n 归档时间: |
|
查看次数: |
38062 次 |
最近记录: |