zoukankan      html  css  js  c++  java
  • 作业4

    031602435 肖逸清

    031602431 王源

    设计思路

    通过VS编辑resx文件并生成resources文件,然后用诸多API对资源进行部署、枚举和输出

    具体来说:

    1.LangList.resx

    存储配置好的所有语言名称,以及对应于名称的区域性名称(如zh-CN)

    2.Resource.XX.resx

    XX对应区域性名称

    存储对应语言的提示文字等等

    3. ResourceManager类

    public : ResourceManager(System::String^ baseName, System::Reflection::Assembly^ assembly)

    baseName: 资源的根名称。例如,名为“MyResource.en-US.resources”的资源文件的根名称为“MyResource”。

    assembly: 资源的主 System::Reflection::Assembly。

    通过ResourceManager“管理”不同语言所用的资源文件,除此以外也用来便利地管理单个资源文件

    4. ResourceSet类

    public : ref class ResourceSet

    存储已针对某个特定区域性进行了本地化的所有资源,忽略所有其他区域性(包括任何代用规则)。

    在本程序中实际用来存储LangList并利用System::Resources::ResourceSet::GetEnumerator()实现对Langlist的遍历

    5.Cultrueinfo类

    public : ref class CultureInfo

    提供有关特定区域性的信息(对于非托管代码开发,则称为“区域设置”)。这些信息包括区域性的名称、书写系统、使用的日历以及对日期和排序字符串的格式化设置。

    通过Cultrueinfo指定区域性配合System::Resources::ResourceManager::GetString(System::String^, System::Globalization::CultureInfo^)函数提取资源文件Resource.XX.resx中key(即string^)对应的value

    6.System::Console类

    通过Console类的函数便利地输出string^类型的数据

    7.System::Text::UnicodeEncoding

    通过设置Console::OutputEncodingConsole::OutputEncodingSystem::Text::UnicodeEncoding,使得输入输出采用Unicode编码,从而解决不同语言而产生的乱码问题。


    程序实现和结果测试的截图






    github的提交链接和提交日志截图

    git链接


    两位同学的分工和协作证据截图


    本次作业感想

    刚看到这次作业要求是我是一脸茫然的。。。还是问王源同学才知道是什么意思。。。
    这次的实现方法看起来很刁钻,但是仔细想想却发觉自己早就知晓这种方法的存在了。比如一款游戏,它的图片文件,bgm文件等都在一个相应的文件夹,然后等待调用。那么,如果我找好相应素材,运用调用素材的方式是否就能写出贪吃蛇,坦克大战等简单小游戏咯?等等,所以这次的作业是为以后的windows程序作业作铺垫?!!(惊恐脸)


  • 相关阅读:
    学习笔记|数组的扩展
    javascript日期 时间处理类库
    v-if v-for同时使用 解决eslint报错问题
    跳出foreach循环
    live-player live-pusher惨案
    TypeError: Object(…) is not a function
    实现垂直水平居中的方法
    面试时候遇到的笔试题
    ajax跨域
    Bootstrap响应式相关
  • 原文地址:https://www.cnblogs.com/daydreams/p/6536617.html
Copyright © 2011-2022 走看看