Ejemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AssemblyOperator"/> class.
 /// </summary>
 /// <param name="path">The path.</param>
 public AssemblyOperator(string path)
 {
     ValidateOperator.Begin().NotNullOrEmpty(path, "Exe或DLL文件")
     .IsFilePath(path)
     .CheckFileExists(path);
     filePath = path;
     assembly = Assembly.LoadFile(path);
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 将XML文件反序列化成集合
 /// </summary>
 /// <typeparam name="T">泛型</typeparam>
 /// <param name="path">XML文件路径</param>
 /// <returns>集合</returns>
 /// 时间:2016/8/25 13:11
 /// 备注:
 public static IEnumerable <T> Deserialize <T>(string path)
     where T : class
 {
     ValidateOperator.Begin().NotNullOrEmpty(path, "XML文件").IsFilePath(path).CheckFileExists(path);
     using (Stream stream = new FileStream(path, FileMode.Open, FileAccess.Read))
     {
         XmlSerializer _serializer = new XmlSerializer(typeof(IEnumerable <T>));
         return((IEnumerable <T>)_serializer.Deserialize(stream));
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// 将文件序列化到二进制文件
        /// </summary>
        /// <typeparam name="T">泛型</typeparam>
        /// <param name="data">集合</param>
        /// <param name="path">存储路径</param>
        /// 时间:2016/8/25 11:52
        /// 备注:
        public static void Serialize <T>(IEnumerable <T> data, string path)
            where T : class
        {
            ValidateOperator.Begin().NotNull(data, "需要序列化数据集合").NotNullOrEmpty(path, "二进制文件").IsFilePath(path);
            IFormatter _formatter = new BinaryFormatter();

            using (Stream stream = new FileStream(path, FileMode.Create, FileAccess.Write))
            {
                _formatter.Serialize(stream, data);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 将二进制文件反序列化成集合
        /// </summary>
        /// <typeparam name="T">泛型</typeparam>
        /// <param name="path">路径</param>
        /// <returns>集合</returns>
        /// 时间:2016/8/25 11:54
        /// 备注:
        public static IEnumerable <T> Deserialize <T>(string path)
            where T : class
        {
            ValidateOperator.Begin().NotNullOrEmpty(path, "二进制文件").IsFilePath(path).CheckFileExists(path);
            IFormatter _formatter = new BinaryFormatter();

            _formatter.Binder = new UBinder();
            using (Stream _stream = new FileStream(path, FileMode.Open, FileAccess.Read))
            {
                return((IEnumerable <T>)_formatter.Deserialize(_stream));
            }
        }
Ejemplo n.º 5
0
 /// <summary>
 /// 将对象序列化到XML文件
 /// </summary>
 /// <typeparam name="T">泛型</typeparam>
 /// <param name="model">实体类</param>
 /// <param name="path">XML路径</param>
 /// 时间:2016/8/25 13:16
 /// 备注:
 public static void Serialize <T>(T model, string path)
     where T : class
 {
     ValidateOperator.Begin().NotNull(model, "需要序列化对象").NotNullOrEmpty(path, "XML文件").IsFilePath(path);
     using (Stream stream = new FileStream(path, FileMode.Create, FileAccess.Write))
     {
         XmlTextWriter _xmlTextWriter = new XmlTextWriter(stream, new UTF8Encoding(false));
         _xmlTextWriter.Formatting = Formatting.Indented;
         XmlSerializer _xmlSerializer = new XmlSerializer(model.GetType());
         _xmlSerializer.Serialize(_xmlTextWriter, model);
         _xmlTextWriter.Flush();
         _xmlTextWriter.Close();
     }
 }
Ejemplo n.º 6
0
        /// <summary>
        /// 将XML文件读取成字符串
        /// </summary>
        /// <param name="path">路径</param>
        /// <returns>XML字符串</returns>
        public static string DeserializeToString(string path)
        {
            ValidateOperator.Begin().NotNullOrEmpty(path, "XML文件").IsFilePath(path).CheckFileExists(path);
            XmlDocument _xmlDoc = new XmlDocument();

            _xmlDoc.Load(path);
            StringBuilder _builder   = new StringBuilder();
            StringWriter  _xmlSw     = new StringWriter(_builder);
            XmlTextWriter _xmlWriter = new XmlTextWriter(_xmlSw);

            _xmlWriter.Formatting = Formatting.Indented;
            _xmlDoc.WriteContentTo(_xmlWriter);
            return(_builder.ToString());
        }
Ejemplo n.º 7
0
 private void CheckedINIParamter(string section, string key)
 {
     ValidateOperator.Begin().NotNullOrEmpty(section, "INI段落").NotNullOrEmpty(key, "INI段落对应KEY");
 }
 private void CheckedConfigFile()
 {
     ValidateOperator.Begin().Check <ArgumentNullException>(() => config.HasFile, "config文件不存在。");
 }