如何从Unity中的服务器下载整个目录?

时间:2019-04-16 21:52:02

标签: c# unity3d web webrequest

最终,我的目标是通过Web服务器上的目录来更新StreamingAssets数据目录。

我正在尝试从Web服务器下载文件的整个目录,以便能够为我的游戏更新文件。 (文件夹结构很重要)

当前,我正在使用的文件在StreamingAssets文件夹中具有组织化的层次结构,该结构在运行时读取。游戏开始时,它将版本控制文本文件与服务器的版本控制进行比较,如果它们不同,则应更新为服务器文件。

现在我可以成功获取单个文件并比较其文本,但是我不知道如何获取文件的整个目录及其子文件夹来更新和替换StreamingAssets数据中的文件。 / p>

希望我问的是一个愚蠢的问题,但也许还有一个更好的答案可以实现我的目标,请让我知道在哪里看/你们都会做什么。

这是我获取版本检查的方式:


IEnumerator readOnlineCardVersion()
{
       VersionTextFile = UnityWebRequest.Get("http://www.myserver.com/SteamingAssets/FlashCards_Version.txt");
        if (workingOnline)
        {
            UnityWebRequest www = VersionTextFile;
            yield return www.SendWebRequest();

            if (www.isNetworkError || www.isHttpError)
            {
                Debug.Log(www.error);
            }
            else
            {
                // Show results as text
                Debug.Log(www.downloadHandler.text); //.downloadHandler.);

                // Or retrieve results as text
                onlineCardVersion = www.downloadHandler.text;
            }
        }
        else
        {
            #region LocalTest
            //Read the text from directly from the test.txt file
            StreamReader reader = new StreamReader(onlineFolderPath + "StreamingAssets/FlashCards_Version.txt");
            using (reader)
                onlineCardVersion = reader.ReadToEnd();
            //Debug.Log("." + onlineCardVersion + ".");
            reader.Close();
            #endregion
        }
}

基本上,我可以简单地检索单个文件,但是如何递归地获取特定Web目录中的所有文件。

0 个答案:

没有答案