zoukankan      html  css  js  c++  java
  • 比较文件内容是否一致

     /// <summary>
            /// 比较是否相同文件
            /// </summary>
            /// <param name="fileValidator">原文件路径</param>
            /// <param name="fileToCompare">要比较文件路径</param>
            /// <returns>是否相同</returns>
            public static bool FileCompare( string fileValidator, string fileToCompare )
            {
                //  判断文件路径是不是一样。
                if(fileValidator == fileToCompare)
                {return true;}
                int file1byte = 0;
                int file2byte = 0;
                //开始文件流比较
                try
                {
                    using(FileStream fs1 = new FileStream(fileValidator,FileMode.Open),fs2 = new FileStream(fileToCompare,FileMode.Open))
                    {
                        //  首先检查文件大小。如果两个文件的大小不相同,则肯定是不相同的文件。
                        if(fs1.Length != fs2.Length)
                        {
                            // 关闭文件。
                            fs1.Close();
                            fs2.Close();
                            return false;
                        }
                        //  逐一比较两个文件的每一个字节,直到发现不相符或已到达文件尾端为止。
                        do
                        {
                            //从每一个文件读取一个字节。
                            file1byte = fs1.ReadByte();
                            file2byte = fs2.ReadByte();
                        }while ((file1byte == file2byte) && (file1byte != -1));
                        // 关闭文件。
                        fs1.Close();
                        fs2.Close();
                    }
                    //  返回比较的结果。在这个时候,只有当两个文件的内容完全相同时,"file1byte" 才会等于 "file2byte"。
                    return ((file1byte - file2byte) == 0);
                }
                catch( FileNotFoundException ex)
                {
                    throw ex;
                }
            }
  • 相关阅读:
    NABCD项目分析
    第七周学习进度
    第六周学习进度
    构建之法阅读笔记03
    [算法] 求x的n次方的一种for循环实现
    [算法]分解质因数
    通过索引操作数组
    [swift入门] 数据类型
    二叉排序树 常用函数小结
    剑指 Offer 54. 二叉搜索树的第k大节点 做题小结
  • 原文地址:https://www.cnblogs.com/zsxfbj/p/747989.html
Copyright © 2011-2022 走看看