public void Remove(TimeLineData data) { if (_timeLineDataList.Contains(data)) { _timeLineDataList.Remove(data); } }
/// <summary> /// 专门解析data.push代码段 /// </summary> /// <param name="sr">StreamReader的当前行应该是data.push代码段中第一个属性的前一行,也就是"data.push({"所在的行</param> /// <param name="timeLineData">用于存放解析出的键值对的TimeLineData对象</param> private int ParseDataPush(StreamReader sr, TimeLineData timeLineData) { /* 判断当前行是不是一条注释语句。 * 如果是注释语句就不做处理,直接进入到下一行; * * 如果不是注释语句,那就简单地认为是有效的键值对语句, * 从而提取出Key和Value,存储到TimeLineData对象中, * 并加入到链表_timeLineDataList中; * * 如果是结束符号"})",则退出*/ int keyValueCount = 0; //已经获取到的键值对的个数 string line = null; while ((line = sr.ReadLine().Trim()) != EditorConstant.DATA_CODE_END_PART) { if (!IsComment(line)) { //提取该行的Key和Value并存储到TimeLineData对象中 timeLineData.AddKeyAndValue(line); keyValueCount++; } } this._timeLineDataList.Add(timeLineData); return(keyValueCount); }
public void Add(TimeLineData data) { if (!_timeLineDataList.Contains(data)) { _timeLineDataList.Add(data); } }
/// <summary> /// 解析Js代码,把代码按一定规则拆分并存储到容器中 /// </summary> private void Parse(StreamReader sr) { string line = null; while ((line = sr.ReadLine()) != null) { line = line.Trim(); if (line.Equals(EditorConstant.DATA_CODE_FORE_PART)) { //开始解析data.push代码段 TimeLineData tld = new TimeLineData(); ParseDataPush(sr, tld); } } }