public static int getValidIndex()
    {
        string path = Application.persistentDataPath + "/State.dat";

        if (File.Exists(path))
        {
            BinaryFormatter formatter = new BinaryFormatter();
            FileStream      stream    = new FileStream(path, FileMode.Open);

            StateData data = (StateData)formatter.Deserialize(stream);
            stream.Close();
            int cnt = data.GetFlowerNum();

            for (int i = 0; i < cnt; i++)
            {
                string pth = Application.persistentDataPath + "/test" + i.ToString() + ".flw";
                if (!File.Exists(pth))
                {
                    return(i);
                }
            }
            saveFlowerCnt(cnt + 1);
            return(cnt);
        }
        else
        {
            saveFlowerCnt(1);
            return(0);
        }
    }
    public int getFlowerNum()
    {
        string path = Application.persistentDataPath + "/State.dat";

        if (File.Exists(path))
        {
            BinaryFormatter formatter = new BinaryFormatter();
            FileStream      stream    = new FileStream(path, FileMode.Open);

            StateData data = (StateData)formatter.Deserialize(stream);
            stream.Close();
            int cnt = data.GetFlowerNum();

            return(cnt);
        }
        else
        {
            return(0);
        }
    }