【发布时间】:2018-05-24 17:50:47
【问题描述】:
我需要这方面的帮助。它在我的 logcat 上说:
System.FormatException:索引(从零开始)必须大于或等于零且小于参数列表的大小。
这是我到目前为止所做的。
1.)
string full_path = string.Format("{0} {1}",Application.streamingAssetsPath + path_with_extention_under_streaming_assets_folder);2.)
string full_path = string.Format("{0}/{1}",Application.streamingAssetsPath + path_with_extention_under_streaming_assets_folder);3.)
string full_path = string.Format("{0}",Application.streamingAssetsPath + path_with_extention_under_streaming_assets_folder);
所有这些都不起作用。我的 logcat 上仍然出现错误
这是我的实际代码:
// Load 2 (StreamingAssets).
public static string LoadJsonFromStreamingAssets(string path_with_extention_under_streaming_assets_folder)
{
string json = null;
try
{
//Android Platform
#if UNITY_ANDROID
string full_path = string.Format("{0}/{1}",Application.streamingAssetsPath + path_with_extention_under_streaming_assets_folder);
// Android only use WWW to read file
WWW reader = new WWW(full_path);
while (!reader.isDone){}
json = reader.text;
// PK Debug 2017.12.11
Debug.Log("STEP 1. ");
Debug.Log(json);
JsonData itemData = JsonMapper.ToObject(json);
Debug.Log("STEP 2. ");
#else
string full_path = string.Format("{0}/{1}", Application.streamingAssetsPath, path_with_extention_under_streaming_assets_folder);
StreamReader reader = new StreamReader(full_path);
json = reader.ReadToEnd().Trim();
reader.Close();
#endif
}
catch (Exception e)
{
Debug.LogWarningFormat("Failed to Load.\n{0}\n{1}", e, path_with_extention_under_streaming_assets_folder);
}
return json;
}
【问题讨论】:
-
3) 上面不应该给出那个错误,但是你为什么需要使用
string.Format( )呢?
标签: c# android json unity3d assets