//------------------------------------------------------------------------------------------ public bool LoadFromFile(string p) { bool ret = false; if (data == null) { return(false); } try { if (File.Exists(p) == true) { string str = File.ReadAllText(p, Encoding.GetEncoding("utf-8")); dynamic ardj = DynamicJson.Parse(str); if (ardj.header != D_Header) { return(ret); } if (ardj.cellCount < 6) { return(ret); } if (ardj.frameCount < 6) { return(ret); } int c = (int)ardj.cellCount; int f = (int)ardj.frameCount; string[] cap = (string[])ardj.caption; double[][][] cell = (double[][][])ardj.cell; if (cap.Length != c) { return(ret); } if (cell.Length != c) { return(ret); } data.ClearDellData(); data.SetSize(c, f); data.PageSec = (TSPageSec)ardj.pageSec; data.FrameRate = (TSFps)ardj.frameRate; data.SheetName = ardj.sheetName; data.CREATE_USER = ardj.CREATE_USER; data.UPDATE_USER = ardj.UPDATE_USER; data.CREATE_TIME = DateTime.Parse(ardj.CREATE_TIME); data.UPDATE_TIME = DateTime.Parse(ardj.UPDATE_TIME); data.TITLE = ardj.TITLE; data.SUB_TITLE = ardj.SUB_TITLE; data.OPUS = ardj.OPUS; data.SCECNE = ardj.SCECNE; data.CUT = ardj.CUT; data.CAMPANY_NAME = ardj.CAMPANY_NAME; data.SetCellCaption(cap); for (int i = 0; i < cell.Length; i++) { int[] ary = new int[f]; for (int j = 0; j < f; j++) { ary[j] = -100; } int ll = cell[i].Length; for (int j = 0; j < ll; j++) { ary[(int)cell[i][j][0]] = (int)cell[i][j][1]; } if (ary[0] <= -100) { ary[0] = 0; } for (int j = 1; j < f; j++) { if (ary[j] <= -100) { ary[j] = ary[j - 1]; } } data.SetCellLayer(i, ary); } ret = true; } } catch { ret = false; } return(ret); }