1

我可以从 Unity 中的字符串文件中读取特定行吗?更具体地说,我可以将字符串中的特定行分配给另一个字符串吗?

基本上我想要实现的是从互联网下载文本文件,测量其中有多少行,然后将随机行分配给另一个字符串。到目前为止,我已经设法下载了字符串并测量了有多少行,但我无法弄清楚如何读取特定的字符串行。

当前代码(下载文本文件,分配给字符串变量并测量行数):

    using UnityEngine;
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine.Networking;
    using UnityEngine.UI;

    public class PickRandomLine : MonoBehaviour {
        string teksts;
        string url = "http://website.com/teksts.txt";

        public void Zajebal(){
            StartCoroutine (LudzuBled ());
        }

        IEnumerator LudzuBled(){
            yield return 0;
            WWW teksts2 = new WWW(url);
            yield return teksts2;
            teksts = teksts2.text;
            print (teksts);
            int numLines = teksts.Split('\n').Length;
            print ("linijas: " + numLines);
    }
}
4

1 回答 1

1

您快到了。

// this gives you all the lines in a string array
var lines = teksts.Split('\n');

// assign a specific line by index
var specificLine = lines[0];

此外,您提到想要“分配一条随机线”。我不知道你的意思是不是字面意思,但如果是这样,让我们​​更进一步:

// get your random number between zero and the number of lines
var random = new Random();
var randomNumber = random.Next(0, numLines);

// assign a random line by index
var randomLine = lines[randomNumber];
于 2018-05-03T05:04:30.973 回答