Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB.NET如何用不可破空格字符初始化常量_Vb.net_Constants - Fatal编程技术网

VB.NET如何用不可破空格字符初始化常量

VB.NET如何用不可破空格字符初始化常量,vb.net,constants,Vb.net,Constants,我用c#编写了这段代码,它是有效的,可以工作 public const char NBSP = '\u00A0'; 由于某些原因,我需要在VB.net中编写此方法。我试过这些: 一, 错误:选项Strict On不允许从“字符串”到“字符”的隐式转换 二, 错误:字符常量必须仅包含一个字符 三, 错误:无法将整数值转换为字符 注意:我不能使用ChrW函数。。都不是Convert.ToChar(),因为它是常量。一个解决方案可能是删除Const键,但在我看来很难看 我想我应该使用字符串而不是Ch

我用c#编写了这段代码,它是有效的,可以工作

public const char NBSP = '\u00A0';
由于某些原因,我需要在VB.net中编写此方法。我试过这些:

一,

错误:选项Strict On不允许从“字符串”到“字符”的隐式转换

二,

错误:字符常量必须仅包含一个字符

三,

错误:无法将整数值转换为字符

注意:我不能使用ChrW函数。。都不是Convert.ToChar(),因为它是常量。一个解决方案可能是删除Const键,但在我看来很难看

我想我应该使用字符串而不是Char数据类型。但不确定是否会引起任何问题

Public Const NBSP As String = "\u00A0"
有什么建议吗?

不同的方法

使用整数存储值,然后使用以下命令将其转换为
char

使用字节数组并调用将字节数组转换为字符串。请注意,字节顺序颠倒:

Dim nbs2 As Byte() = {&HA0, &H0}
Console.WriteLine("NBS" & Encoding.Unicode.GetString(nbs2))
用于将unicode转义字符“\uxxx”转换为字符串:

Dim nbs3 As String = "\u00A0"
Dim nbs4 = "NBS" & Regex.Unescape(nbs3)
Console.WriteLine(nbs4)
Public Const NBSP As String = "\u00A0"
Dim nbs1 As Integer = &HA0
Console.WriteLine("NBS" & New String({ChrW(nbs1)}))
Dim nbs2 As Byte() = {&HA0, &H0}
Console.WriteLine("NBS" & Encoding.Unicode.GetString(nbs2))
Dim nbs3 As String = "\u00A0"
Dim nbs4 = "NBS" & Regex.Unescape(nbs3)
Console.WriteLine(nbs4)