strange error after install vs2005(Version 8.0.50727.26 RTM.050727-2600)

When I uninstalled beta2 and installed the current version. Run following code will get a wrong result.

using System;
using System.Collections.Generic;
using System.Text;

namespace test
{
class Program
{
static void Main(string[] args)
{
string test = "\x3007AB";
if (test.StartsWith("AB")) //it return TRUE!!!
{
Console.WriteLine("Error");
}
else
Console.WriteLine("OK");
}
}
}

I reinstalled vs2005 using "repair" option. The error is still exists.I guess reinstall windows will solve the problem, but that cost too much time. Anybody can help?

[656 byte] By [BennyWang] at [2008-2-7]
# 1

If I change 0x3007 to 0x3006 or 0x3008 it's OK.

0x3007 is IDEOGRAPHIC NUMBER ZERO

BennyWang at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Debugger...
# 2
I reproduce this. Post a bug on the Microsoft Product Feedback Center.
DavidM.Kean-MSFT at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Debugger...
# 3

Thanks David,

I have posted it to the feedback center. The reply is that won't be fixed.

http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackid=ea853b23-257a-48c1-93d5-80c3fcc7de16

And I also found another strange behavior in both framework 1.1 and 2.0.

string s = "-\u3007-";
while (s.IndexOf ("--") >= 0)
s = s.Replace ("--", "-");

which will cause an infinite loop.

0x3007 really is a problem. :)

BennyWang at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Debugger...
# 4
If it is a breaking change between .NET 1.1 and .NET 2.0, reopen the bug (Edit and change Status to Reopened). Make sure to state that it is a breaking change.
DavidM.Kean-MSFT at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Debugger...

Visual Studio

Site Classified