protected override bool VariationalSerialize(StringBuilder sb, int indent) { bool bSerializeSuc = false; if (bSkipCurNest) { for (int i = 0, len = nodeContainer.Count; i < len; ++i) { if (nodeContainer.Count == 1) { nodeContainer[i].SkipCurNest(); } if (nodeContainer[i].Serialize(sb, indent)) { bSerializeSuc = true; if (nodeContainer[i] is CellInfo) { sb.Append("\n"); } } } } else if (ToLuaText.TransferList(nodeContainer, sb, indent)) { bSerializeSuc = true; } return(bSerializeSuc); }
public bool Serialize(StringBuilder sb, int indent) { bool bSerializeSec = false; try { sb.Append("return "); var nodeList = tableColumnNodeList.NodeContainer; if (nodeList.Count == 1) { /// 处理的是整张表只有一个“|”标志的情况,即lua配置只有“一张”表。 /// "|"标志主要用来只用一个lua配置表,存储多种格式的lua配置表 nodeList[0].NestInArray(); bSerializeSec = nodeList[0].Serialize(sb, indent); } else { bSerializeSec = ToLuaText.TransferList(nodeList, sb, indent); } /// 去掉最后一个","字符 sb.Remove(sb.Length - 1, 1); return(bSerializeSec); } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(string.Format("序列化表 {0} 发生错误\n{1}", tableName, e.ToString())); return(false); } }