【发布时间】:2020-11-25 03:09:01
【问题描述】:
我已经设法将一些信息保存到一个文件中。我希望能够读取该信息并使用它来创建项目
public void Save()
{
StreamWriter writer;
writer = new StreamWriter("PlayerInventory.txt");
for (int i = 0; i < playerInventory.Length; i++)
{
if (playerInventory[i] != null)
{
if (playerInventory[i] is Sheild sheild)
{
writer.WriteLine("Sheild:" + sheild.Defence + "," + sheild.name + "," + sheild.description + "," + sheild.cost);
}
}
}
else
{}
}
我开始使用此代码来加载它,但我不知道如何完成代码。现在它的分裂,但我不知道如何将它分配给任何东西。
例如 sheild:20,Shield,this is a shield,100
现在分为
- 20,
- 盾牌,
- 这是一个盾牌,
- 100
但我不知道将这些东西分配给谁的数组
public void Load()
{
StreamReader reader;
reader = new StreamReader("PlayerInventory.txt");
string line;
string[] currentLineData;
while (true)
{
try
{
line = reader.ReadLine();
if (line == null)
{
break;
}
if (line.Contains("Sheild"))
{
line.Replace("Sheild:", "");
currentLineData = line.Split(',');
}
}
catch
{
break;
}
}
reader.Close();}
【问题讨论】:
-
嗨,有趣的是,可能有异常或错误吗?
-
可能是错字——“sheild”与“shield”...
-
它更多的是我不知道使用什么代码来获取信息将信息放入一个数组中并感谢拼写错误:)
-
您需要创建一个数组或盾牌列表。在循环中创建 Shield 类的对象。从文件中为其属性赋值。将该对象添加到列表中。你就是这样做的。
-
您似乎想要一个您正在创建的所有数组的列表,例如
List<string[]>。创建它的实例后,您可以添加:list.Add(currentLineData);。