コード例 #1
0
    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]));
    }
コード例 #2
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);
    }
コード例 #3
0
    /// <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);
    }