在Unity中通过json从本地文件夹中提取图像

时间:2019-03-08 11:17:58

标签: c# json unity3d

我正在通过Json从系统中存在的本地图像中提取图像。 Json文件是:

"BackgroundImage": [
    "C:/Users/SS1/Downloads/images/black_background.jpg",
     "C:/Users/SS1/Downloads/images/Clipboard.png"
],

是否可以省略“ C:/ Users / SS1”,因此Unity只会从系统中提取文件夹,而不管它是哪台计算机?

谢谢, 赛夫

2 个答案:

答案 0 :(得分:2)

<LinearLayout android:layout_width="wrap_content" android:layout_height="45dp" android:layout_alignParentEnd="true" android:layout_below="@+id/eventsubtitle"> <RatingBar android:layout_width="wrap_content" android:layout_height="45dp" android:id="@+id/ratingbar" android:stepSize="1.0"/> </LinearLayout> 采用相对的绝对路径。只需从项目的根目录放置相对路径,然后将其传递给相对方法。或者,您可以只将文件名存储在JSON文件中,然后使用应用程序执行路径通过Directory.GetFiles()查找文件夹。

例如

AppDomain.CurrentDomain.BaseDirectory

https://docs.microsoft.com/en-us/dotnet/api/system.io.directory.getfiles?redirectedfrom=MSDN&view=netframework-4.7.2#overloads

答案 1 :(得分:1)

您不应具有完整路径,而应具有相对路径,并使用StreamingAssets将文件存储在其中。然后,您可以从大多数平台的路径中加载资产,而不会出现问题。您不应该将这些文件存储在其他地方,而应该与游戏版本一起存储。

您也可以使用application data path,但推荐使用流媒体资产。