首页 > 技术文章 > 程序国际化 ---- 自动出题软件

yyf031602438 2017-03-12 11:08 原文

相同部分

学号:031602438 博客主页链接:http://www.cnblogs.com/yyf031602438/

学号:031602317 博客主页链接:http://www.cnblogs.com/fleur1025/

设计思路:

(怎么讲呢,由于我对vs不是很熟,所以给的参考也没怎么看懂,所以我用的是自己的方法写了,有点伪)

建个txt文本,里面存你程序要用到的各种文字,资源,比如:中文请输入你就以请输入+中文+sourceHint这样存储。然后下一行是请输入的英文你可以这样存储:please input+英语+sourceHint....然后你定义一个stl中的map。程序一开始初始化,对txt文件一行一行读每行都以Map(你的map stl变量名)
Map["资源变量名+语言"]=具体内容;初始化
然后定义一个static string currentlanguge 代表当前的语言
比如你接下来要用到当前语言请输入
就直接可以Map["inputHint"+"当前语言"]这样引用。
然后想加语言就在txt文本中添加各个资源的其他语言格式,改完后直接可以编译运行,不用修改代码

当然这只是思路,具体实施可能会有变化。如果思路看不懂,下面我会贴一下这部分的核心代码,毕竟全部代码有点多。

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

fp=fopen("Language.txt","r"); ch[0][0]=fgetc(fp); while(!feof(fp)) { if(ch[i][j]=='\n') {i++;j=0;} else { j++; if(max //这里是读写txt文本的部分 for(i=5;i<=m;i++) { for(j=0;j //这个是给Map初始化的部分





github的提交链接:(https://github.com/NSDie/Operations)

提交日志截图:


分工:
1). 031602438 负责 语言的读取以及实现多语言;
2). 031602317 负责 翻译、制作txt文本。

协作证据截图:

差异部分

1.感想

觉得自己太弱了,也是第一次接触、学习这种新的思想,由于中途不会使用vs浪费了很多时间。

最后还是另辟蹊径, 想别的方法,就像我代码中的栈是自己写的一样,能不能自己写一个能存储资源的代码。

于是就有了 Map 。

这期间我也非常感谢帮助过我的学长,我有很多疑问,也是看了很多博客以及问了学长问题。

也算是边学习边写这份作业吧。

这次作业之后我也要好好学习一下如何使用vs中的资源文件。

推荐阅读