带有变音符号的WWW本地DataPath

时间:2014-09-08 09:30:03

标签: c# unity3d external

我在游戏中使用WWW请求来加载外部XML和JSON数据。一切正常,除非在DataPath中带有变音符号的PC上运行StandAlone。

用户姓氏为“Rösner”,数据路径为file://C:/Users/Rösner/[GameDataPath...]。 WWW请求返回错误:

WWW.error = "Couldn't open file /Users/Rösner/[GameDataPath...]"
WWW.bytesDownloaded = 0
WWW.message = ""

路径正确,文件存在。一旦我们将目录移动到不在/Users/Rösner/中的另一个文件夹,例如USB记忆棒,它就会起作用。

有没有办法防止这个问题?该游戏将在德国发行,我们有很多姓氏与变音符号。

2 个答案:

答案 0 :(得分:1)

如果您想使用WWW类而不是System.IO,则应该转义您的URI("Note: URLs passed to WWW class must be '%' escaped.")。

尝试:

var www=new WWW(WWW.EscapeURL(pathToYourFile));

答案 1 :(得分:0)

您可以使用标准System.IO api:

System.IO.File.ReadAllText(Application.streamingAssetsPath+"file.json");

应该更难打破。