private void 二进制矩阵读写试验ToolStripMenuItem_Click(object sender, EventArgs e) { DateTime from = DateTime.Now; int order = 100; double[][] matrix = MatrixUtil.CreateRandom(order); //double[][] matrix = MatrixUtil.CreateIdentity(order); TimeSpan create = DateTime.Now - from; from = DateTime.Now; string path = @"C:\matrix.bmat"; MatrixUtil.SaveToBinary(matrix, path); //TimeSpan write = DateTime.Now - from; //from = DateTime.Now; //double[][] newMatrix = MatrixUtil.FromBinary(path); //TimeSpan read = DateTime.Now - from; //string msg = "" // + "阶次:" + order + "\r\n" // + "创建:" + create.TotalSeconds +"\r\n" // + "写入:" + write.TotalSeconds + "\r\n" // + "读取:" + read.TotalSeconds + "\r\n"; //MessageBox.Show(msg // ); //稀疏矩阵 Geo.Algorithm.SparseMatrix sM = new Geo.Algorithm.SparseMatrix(matrix); path = @"C:\matrix.sbmat"; sM.ToBinary(path); Geo.Algorithm.SparseMatrix s = Geo.Algorithm.SparseMatrix.FromBinary(path); double[][] newSmMtirix = s.GetMatrix(); bool equal = MatrixUtil.IsEqual(newSmMtirix, matrix); //MatrixUtil.GetFormatedText(newMatrix); }