private static string GetCsvKey(TextAsset textAsset) { string[] csvType = CSVConverter.SerializeCSVType(textAsset); string[] csvParameter = CSVConverter.SerializeCSVParameter(textAsset); if (csvType[0] == "string") { return(string.Format("temp => temp.{0} == key", csvParameter[0])); } return(string.Format("temp => temp.{0} == {1}.Parse(key)", csvParameter[0], csvType[0])); }
private static string GetCsvSerialize(TextAsset textAsset) { string[] csvType = CSVConverter.SerializeCSVType(textAsset); string[] csvParameter = CSVConverter.SerializeCSVParameter(textAsset); int keyCount = csvParameter.Length; string csvSerialize = string.Empty; for (int i = 0; i < keyCount; i++) { string[] attributes = new string[] { csvType[i], csvParameter[i] }; if (attributes[0] == "string") { csvSerialize += string.Format("m_tempData.{0}=m_datas[i][{1}];", attributes[1], i); } else if (attributes[0] == "bool") { csvSerialize += GetCsvSerialize(attributes, i, "0"); } else if (attributes[0] == "int") { csvSerialize += GetCsvSerialize(attributes, i, "0"); } else if (attributes[0] == "float") { csvSerialize += GetCsvSerialize(attributes, i, "0.0f"); } else if (attributes[0] == "string[]") { csvSerialize += string.Format("m_tempData.{0}=CSVConverter.ConvertToArray<string>(m_datas[i][{1}].Trim());", attributes[1], i); } else if (attributes[0] == "bool[]") { csvSerialize += string.Format("m_tempData.{0}=CSVConverter.ConvertToArray<bool>(m_datas[i][{1}].Trim());", attributes[1], i); } else if (attributes[0] == "int[]") { csvSerialize += string.Format("m_tempData.{0}=CSVConverter.ConvertToArray<int>(m_datas[i][{1}].Trim());", attributes[1], i); } else if (attributes[0] == "float[]") { csvSerialize += string.Format("m_tempData.{0}=CSVConverter.ConvertToArray<float>(m_datas[i][{1}].Trim());", attributes[1], i); } if (i != keyCount - 1) { csvSerialize += "\n"; csvSerialize += "\t\t\t\t\t"; } } return(csvSerialize); }
/// <summary> /// 获取配置文件属性 /// </summary> /// <param name="textAsset"></param> /// <returns></returns> private static string GetClassParmeters(TextAsset textAsset) { string[] csvNote = CSVConverter.SerializeCSVNote(textAsset); string[] csvType = CSVConverter.SerializeCSVType(textAsset); string[] csvParameter = CSVConverter.SerializeCSVParameter(textAsset); int keyCount = csvParameter.Length; string classParamers = string.Empty; for (int i = 0; i < keyCount; i++) { classParamers += string.Format("/// <summary>\n\t\t///{0}\n\t\t/// </summary>\n", csvNote[i]); classParamers += string.Format("\t\tpublic {0} {1};", csvType[i], csvParameter[i]); if (i != keyCount - 1) { classParamers += "\n"; classParamers += "\t\t"; } } return(classParamers); }