打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C#?.NET4.0?自定义文件并实现文件与应用程序关联

C# .NET4.0 自定义文件并实现文件与应用程序关联

(2012-06-07 13:08:29)
标签:

杂谈


一、如何创建自定义后缀名的文件(如 *.tmp)?

   使用序列化将一个对象序列化成文件,使用 BinaryFormatter类提供方法可以将文件序列 

  化为二进制文件存放。
   注意:待序列化的类必须标示可序列化,方法是在 public classTest{}上方加标签      

         [System.Serializable]
    
通过上一步我们已经知道创建一个自定义扩展名文件的思路了,下面是具体的代码,包括两部分
一个是如可保存文件,一个是如可加载文件(这个类文件附在程序里就能看效果了!!)

------------------------------------------------------------------------
using System.IO;
using System.Xml.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;

namespace SerializerTeset.CommonClass
{
   [System.Serializable]
    public classTestForBinary : ISerializerObject
    {
       private string m_name = string.Empty;
       private string m_userid = string.Empty;

       public string UserName
       {
           set { m_name = value; }
           get { return m_name; }
       }

       public string UserId
       {
           set { m_userid = value; }
           get { return m_userid; }
       }

       /// <summary>
       /// 保存序列化对象
       /// </summary>
       /// <paramname="fileName">文件完整路径包括名称(c:/test.xxj)</param>
       ///<returns></returns>
       public bool Save(string fileName)
       {
           BinaryFormatter bf = new BinaryFormatter();
           using (FileStream fs=newFileStream(fileName,FileMode.Create))
           {
               bf.Serialize(fs, this);
               fs.Close();
           }

           return true;
       }

       /// <summary>
       /// 反序列化以保存的对象
       /// </summary>
       /// <paramname="fileName">文件完整路径包括名称(c:/test.tmp)</param>
       ///<returns></returns>
       public bool Load(string fileName)
       {
           BinaryFormatter xs = new BinaryFormatter();
           TestForBinary tc;
           using (FileStream fs = new FileStream(fileName,FileMode.Open))
           {
               tc = xs.Deserialize(fs) as TestForBinary;
           }

           if (tc == null)
               return false;

           this.m_name = tc.UserName;
           this.UserId = tc.UserId;

           return true;
       }

    }
}
------------------------------------------------------------------------

怎么样,是不是很有意思啊?不过问题又来了:“如何双击这个自定义后缀的文件就能打开咱们
的应用程序呢?”

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
上传图片检测其是否为真实的图片 防范病毒上传至服务器
做论坛其实并不难,只要你掌握了几句精华的asp语法,就能搞定。
WCF大文件传输
成功asp.net core下载文件
SW 工程图编辑程序 宏的一种
Total Commander Ultima Prime 7.7 Multilingual
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服