利用.NET做“电子书阅读器”原来这么简单(其实你也可以做出金山词霸)
2012-03-01 10:22 狼人:-) 阅读(1006) 评论(2) 编辑 收藏 举报一、利用.NET做“电子书阅读器”原来这么简单
先下载组件:Interop.SpeechLib.dll (https://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格式的数据为对象类型
声明:此博有部分内容为转载,版权归原作者所有~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南