/// <summary>
/// Writes the game info to the specified stream
/// </summary>
/// <param name="stream">The stream to write to</param>
/// <example>
/// This example demonstrates creating a .zora save file from a<see cref="GameInfo"/>
/// object. If you have access to the file name you will be saving to, as in this
/// example, you should consider using the <see cref="Write(string)"/> method instead.
/// <code language="C#">
/// GameInfo info = new GameInfo();
/// string file = @"C:\Users\Link\Documents\my_game.zora";
/// using (FileStream outFile = File.Create(file))
/// {
/// info.Write(fileStream);
/// }
/// </code>
/// </example>
public void Write(Stream stream)
{
using (var swriter = new StreamWriter(stream))
{
GameInfoJsonConverter converter = new GameInfoJsonConverter();
IDictionary<string, object> dict = converter.Serialize(this);
string json = SimpleJson.SimpleJson.SerializeObject(dict);
swriter.WriteLine(json);
}
}