我试图将我的多维数据集从一个点移动到一个文本文件中的坐标点。
public class cube : MonoBehaviour
{
// Speed
public float speed = 3.0f;
// Start is called before the first frame update
void Start()
{
print("cube says hi");
}
// Update is called once per frame
void Update()
{
string path = "Assets/Ressources/test.txt";
var sr = new StreamReader(path);
List<string> columnx = new List<string>();
List<string> columny = new List<string>();
List<string> columnz = new List<string>();
using (sr)
{
while (!sr.EndOfStream)
{
string line = sr.ReadLine();
var values = line.Split(new string[] { " " }, System.StringSplitOptions.RemoveEmptyEntries);
columnx.Add(values[0]);
columny.Add(values[1]);
columnz.Add(values[2]);
}
}
float step = speed * Time.deltaTime;
transform.position = Vector3.MoveTowards(transform.position,
new Vector3(
Convert.ToSingle("1.45", CultureInfo.InvariantCulture), Convert.ToSingle("3.258", CultureInfo.InvariantCulture), Convert.ToSingle("4.256", CultureInfo.InvariantCulture)
), step);
}
}
这可行,但是问题是当我用columnx [0] columny [0]和columnz [0]替换“ 1.45”,“ 3.25”和“ 4.25”时,
FormatException: Input string was not in a correct format.
System.Number.ParseSingle (System.String value, System.Globalization.NumberStyles options, System.Globalization.NumberFormatInfo numfmt) (at <437ba245d8404784b9fbab9b439ac908>:0)
我想用第一个元素进行测试,以便可以进行for循环,但是甚至不能使用0。