日期:2014-05-17  浏览次数:20788 次

C# 八进制表示方式
本帖最后由 xiaogui340 于 2013-06-25 10:27:19 编辑
java中定义了
private char[] cfmData = { '\001', 't', '\000', '\021', '\024', '\020', '\000', '\002' };

'\001'这种八进制 在C#中如何表示的?
C# 八进制

------解决方案--------------------
 byte[] cfmData = new byte[]{ 001, 000, 021, 024, 020, 000, 002 };//表示
            foreach(byte b in cfmData)
                Console.WriteLine(Convert.ToInt16(b.ToString(),8));//转换为10进制具体数字

------解决方案--------------------
直接用十进制吧,没有现成的八进制
------解决方案--------------------
和C语言不同,C#不支持8进制表示。你需要手工转换,或者
private char[] cfmData = (new string[] { "\\001", "t", "\\000", "\\021", "\\024", "\\020", "\\000", "\002" }).Select(x => x.StartWith("\\0") ? (char)Convert.ToInt16(x.SubString(1), 8) : (char)x[0] ).ToArray();