C#如何将我的文本文件读入数组?

时间:2017-11-27 19:14:25

标签: unity3d

我是新人。如果格式不正确或者我问一个愚蠢的问题,请原谅我。 (我正在使用Unity。当我运行它时,没有错误;但它似乎没有做任何事情,它不会打印到控制台。任何人都可以帮助我。我找不到很有帮助视频,因为他们使用从游戏对象而不是外部文本文件中检索文本。)

2 个答案:

答案 0 :(得分:1)

您只是从文件中读取前两行,而不是整个文件。这是一个大大简化的版本,一次打印出每一行,我认为这是你想要做的:

    string[] reader = System.IO.File.ReadAllLines( "Assets/Hats Table.txt" );
    for ( int i = 0; i < reader.Length; i++ )
    {
        Debug.Log( "Primary key is " + i + ". The data is " + reader[i]  + "\n");
    }

答案 1 :(得分:0)

您的代码读取第一行,将字符串拆分为“@”(根本不使用字段),读取下一行,遍历itemsStrings中的每个字符并打印每个字符并继续(while循环)直到itemStrings为空。

我想你试图做的是逐行读取文本文件,用'@'分隔每一行并打印每行的字符串。

    StreamReader reader = new StreamReader("./Assets/something.txt");
    String itemStrings = reader.ReadLine();
    char[] delimiter = {'@'};

    while (itemStrings != null) 
    {
        string[] fields = itemStrings.Split(delimiter);

        for (int i = 0; i < fields.Length; i++)
        {
            Debug.Log("Primary key is " + i + ". The data is " + fields[i]);
        }

        itemStrings = reader.ReadLine();
    }