假设我在XML,JSON或YAML格式的文件中有一些数据。所有文档都具有相同的逻辑结构。在简单的情况下:所有文件都具有根元素属性Version。
我想创建可以从这种格式读取和写入数据的类:
enum FileFormat {JSON, XML, YAML};
class File {
FileFormat FileFormat { get; } // We cannot change file format
int Version { get; set; } // We can read/change root attribute Version
Load(string fileName, FileFormat fileFormat); // We can load from JSON/XML/YAML formats
Save (string fileName); // We can save changed in the same format as we read
}
我应该在加载/保存中使用哪种设计模式来选择正确的串行器/解串器?