好吧...我在编程的大世界里完全是个新手。
说...我在保存\加载一个数组时遇到问题。
现在我已经找到了一种方法来保存包含 ArrayA 内容的 .txt 文件。
结果将是一个像这样的字符串“0,1,2,3,4”
但我找不到使用该 .txt 文件来使用该文件设置 ArrayB 的方法。 我完全确定我错过了一些愚蠢的东西。
但是,如果其他人知道替代方法,我非常愿意尝试其他方法(只要我能理解它们)。
编辑1:
这是我用来创建保存文件的代码。
{
FileUtil.DeleteFileOrDirectory(Application.streamingAssetsPath + "/Ordini/" +
"Ordine" + ".txt");
string txtDocumentname = Application.streamingAssetsPath + "/Ordini/" +
"Ordine" + ".txt";
for (int i = 0; i < 500; i++)
{
OrdineArray += ArrayMenù.Array[i] + " ;";
}
if (!File.Exists(txtDocumentname))
{
File.WriteAllText(txtDocumentname, OrdineArray);
}
}
最佳答案
让我们退后一步。有很多方法可以将数据(任何类型)保存到文件中。
一种常见且惯用的方法是对其进行序列化。再次强调,序列化数据的方法几乎无穷无尽,但是 json 是一个很棒的现代序列化解决方案。
优点
- 易于阅读
- 这很容易做到
- 图书馆提供了大量信息。
- 它可以满足大量复杂的自定义类型。
链接
Newtonsoft.Json 的 nuget https://www.nuget.org/packages/Newtonsoft.Json/
安装
Install-Package Newtonsoft.Json -Version 12.0.3
示例
var array = new[] {12, 3, 4, 5};
// serialize it
var stringData = JsonConvert.SerializeObject(array);
// write to file
File.WriteAllText("FileName", stringData);
// read from file
var dataFromFile = File.ReadAllText("FileName");
// convert it back
var yourArrayAgain = JsonConvert.DeserializeObject<string[]>(dataFromFile);
// prove it
Console.WriteLine(string.Join(",", yourArrayAgain));
输出
12,3,4,5
关于C# 使用 .txt 处理数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64288198/