none
用BinaryReader与FileStream的Read方法读出的byte数组有什么不同? RRS feed

  • 问题

  • 方法如下,我初步进行比较,好像(test1()和test2())二者没什么区别,byteData中的结果都是一样的吧?
    而且,用BinaryReader(既test)好像是比较标准的写法 既然结果是一样的,

    他为什么要用两个类(FileStream BinaryReader)这样不觉得多此一举吗?

        class Program
        {
            static void Main(string[] args)
            {
                test1();
                Console.ReadKey();
            }
            static void test1()
            {
                //把文件转换成二进制流
                byte[] byteData = new byte[100];
                FileStream fs = new FileStream(@"c:\1.txt", FileMode.Open, FileAccess.Read);
                BinaryReader read = new BinaryReader(fs);
                read.Read(byteData, 0, byteData.Length);
                foreach (byte b in byteData)
                {
                    Console.Write(" {0} ", b);
                }
            }
            static void test2()
            {
                //把文件转换成二进制流
                byte[] byteData = new byte[100];
                FileStream fs = new FileStream(@"c:\1.txt", FileMode.Open, FileAccess.Read);
                fs.Read(byteData, 0, byteData.Length);
                foreach (byte b in byteData)
                {
                    Console.Write(" {0} ", b);
                }
            }
        }


    我是半路出家,而且是自学 学的是C#语言,希望回帖的高手们留意一下,谢谢大家的帮助

    2012年7月5日 2:13

答案