利用.NET做“电子书阅读器”原来这么简单(其实你也可以做出金山词霸)
2012-03-01 10:22
731 查看
一、利用.NET做“电子书阅读器”原来这么简单
先下载组件:Interop.SpeechLib.dll (http://files.cnblogs.com/waw/Interop.SpeechLib.rar)阅读能力:中文,英文...
调用代码如下:
/// <summary> /// 利用“SpeechLib组件”调用“windows系统声音”来读取“文本”内容 /// </summary> /// <param name="str"></param> private void SpeakText(string str) { SpeechVoiceSpeakFlags sVSFlagsAsync = SpeechVoiceSpeakFlags.SVSFlagsAsync; SpVoice voice = new SpVoiceClass(); voice.Rate = 1; voice.Speak(str, sVSFlagsAsync); }
原理:利用windows系统内置的声音API接口完成读取
--------------------------------------------------华丽分割线(与此文无关,仅为知识点备份)-------------------------------------------
二、Hashtable格式数据与文件存储
示例代码如下:/// <summary> /// 读取 data.dat 中的数据 /// </summary> private void Deserialize() { FileStream serializationStream = new FileStream(Application.StartupPath + @"\data.dat", FileMode.Open); try { BinaryFormatter formatter = new BinaryFormatter(); Hashtable hst = (Hashtable)formatter.Deserialize(serializationStream); foreach (DictionaryEntry entry in hst) { //读取数据... } } catch (SerializationException exception) { MessageBox.Show(exception.Message); } finally { serializationStream.Close(); } } /// <summary> /// 保存Hashtable格式的数据为文件 /// </summary> private void Serialize() { FileStream serializationStream = new FileStream(Application.StartupPath + @"\data.dat", FileMode.Create); BinaryFormatter formatter = new BinaryFormatter(); Hashtable hst = new Hashtable(); //设置Hashtable数据值 hst.Add("key1", "value1"); hst.Add("key2", "value2"); formatter.Serialize(serializationStream, hst); serializationStream.Close(); }
代码中实现了将Hashtable格式的数据另存为文件,和读取Hashtable格式的数据为对象类型
相关文章推荐
- 实现变色TextView及ViewPager指示器(原来可以这么简单)
- 原来操控界面可以这么简单----安卓上下滑动缩放顶部图片,左右滑动结束当前Activity,及View柔和回弹效果
- 大家用了这么久的.net有没有发现C#中可以用中文变量呀!!可用这个特性来彻底改变程序的易读性(搞笑).但其实有一个非常独特的用处的
- 学习.NET遇到的第一个问题。原来解决这么简单
- (原来可以这么简单)实现变色TextView及ViewPager指示器(二)
- 原来python开发后端服务器还可以这么简单(未完成)
- DAO层原来可以这么简单 FastQuery使用手册.
- 5分钟入门网络爬虫 - 原来可以这么简单易懂
- 利用pandas合并多个excel原来这么简单
- 实体类的枚举属性--原来支持枚举类型这么简单,没有EF5.0也可以
- 实体类的枚举属性--原来支持枚举类型这么简单,没有EF5.0也可以
- 心电图测量原来可以这么简单
- 原来这么简单就可以实现无纸化办公
- ARMS: 原来实时计算可以这么简单!
- 原来幸福可以这么简单
- 原来微信支付可以这么简单!手把手搭建支付demo
- JAVA中BCD码的转化问题:原来可以这么简单
- ASP.NET MVC3 + Ninject.Mvc3 依赖注入原来可以这么简单
- DAO层原来可以这么简单 FastQuery使用手册.
- 实体类的枚举属性--原来支持枚举类型这么简单,没有EF5.0也可以