我有enum list
(?),我想将其保存在StreamWriter
,但我不知道如何保存它,我的意思是:
TextWriter gPieza = new StreamWriter("Pieza.txt", true);
gPieza.WriteLine();
gPieza.Close();
我不知道如何把它放在WriteLine中。我试图放Class.EnumName.ToString();
,但它不会让我,de EnumName之后出现的是Enum所具有的不同之处。
这些是我的enum lists
:
public enum Types
{
Vacio,
Peon,
Torre,
Caballo,
Alfil,
Reina,
Rey
}
public enum Colors
{
White,
Black
}
这些是国际象棋比赛的一部分,我需要保存用户放在棋盘上的棋子以及棋子摆放的位置。
Types _type;
Colors _color;
Point _coord;
答案 0 :(得分:1)
只写enum,
var myEnums = new List<MyEnum>
{
MyEnum.Value1,
MyEnum.Value2,
MyEnum.Value1,
MyEnum.Value1,
MyEnum.Value2,
MyEnum.Value1,
MyEnum.Value1,
MyEnum.Value2,
MyEnum.Value1
};
var streamWriter = new StreamWriter("test.txt");
foreach (var myEnum in myEnums)
{
streamWriter.WriteLine(myEnum);
}
streamWriter.Close();
如果要写实际值
streamWriter.WriteLine((int)myEnum);
<强>更新强> 对于编写多种类型的枚举,您可以编写一些方法,如
public static void WriteEnums<T>(List<T> enums)
{
var streamWriter = new StreamWriter("test.txt");
foreach (var myEnum in enums)
{
streamWriter.WriteLine(myEnum);
}
streamWriter.Close();
}
并称之为,
var types = new List<Types>
{
Types.Alfil,
Types.Peon,
Types.Vacio
};
var colorses = new List<Colors>
{
Colors.Black, Colors.Black, Colors.White
};
WriteEnums(colorses);
WriteEnums(types);
答案 1 :(得分:0)
foreach( var enumValue in Enum.GetValues(typeof(MyEnum)))
{
Console.WriteLine(enumValue); // or enumValue.ToString()
}