String.Split拆分错误的字符

时间:2012-09-11 19:33:16

标签: vb.net string

在VB.NET 2010中

在此行string.split("³")

上呼叫"³4002³1³1ÄTest³1ÄPhysician³"

返回一个包含8个字符串的数组:

"","4002","1","1","Test","1","Physician",""

据我所知"³" != "Ä"

这对我没有任何意义。有没有人对于为什么会发生这种情况有任何见解,也许我知道如何让它给我一些我期望的结果?

1 个答案:

答案 0 :(得分:0)

在VB.NET上,它可能正在尝试将字符串转换为编码,其中字符³和字符Ä都不能正确解释。必须将它们转换为已识别的“默认”最佳解释值,并且这些转换后的值将根据.Split方法的条件返回true。

强制所有字符串上的unicode编码解决问题(包括编码.Split(“³”)。对其进行编码并将其保存到变量之前,将其拆分为.Split(encodedValue)