前段時間制作AVG逛漫,用CSV來存儲劇本澡绩,由于csv本質(zhì)是用逗號分隔的文本文件责蝠,所以讀取CSV并不需要像讀取xlsx用插件。同時使用 csv 也比 txt 的編輯更加友好矛纹。
image.png
核心思路
將CSV文件存放在Resources目錄下使用Load讀取臂聋。用換行和逗號來分割成二維數(shù)組。再定義一個方法或南,通過ID和表頭來獲取指定位置的值孩等。
關(guān)鍵代碼
void ReadMainScenario()
{
mainScenarioTA = (TextAsset)Resources.Load("Scenarios/ScenarioMain") as TextAsset;
string[] lineArray = mainScenarioTA.text.Split('\r');
mainScenario = new string[lineArray.Length][];
for (int i = 0; i < lineArray.Length; i++)
{
mainScenario[i] = lineArray[i].Split(',');
}
}
string GetValue(int id, string name)
{
for (int i = 1; i < mainScenario.Length; i++)
{
if (mainScenario[i][0].Length != 1)
{
if (int.Parse(mainScenario[i][0]) == id)
{
for (int j = 0; j < mainScenario[i].Length; j++)
{
if (mainScenario[0][j] == name)
{
return mainScenario[i][j];
}
}
}
}
}
return null;
}
使用:
string dialogContent = GetValue(77, "內(nèi)容");