
标题: [讨论] msg.txt乱码转换工具(带原文、韩文、机翻)并可直接将修改的文本存入,附源码解析 [打印本页]
作者: xin344 时间: 2013-3-2 23:28 标题: msg.txt乱码转换工具(带原文、韩文、机翻)并可直接将修改的文本存入,附源码解析
看到过妖哥发表的translate-tool和一个朋友发的msg编辑器,t-tool的谷歌翻译挂掉了,跟谷歌收费翻译有关,另一个引擎翻译的又不尽人意,msg工具我也没下载到程序,估计和论坛挂了有关。—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 ]' U- i+ B# I: j: r
就自己写了个C#.NET的程序,方便大家对msg进行汉化。魔力私服,最新魔力宝贝私服技术交流9 m( A. m2 b8 e5 k2 B& G/ w
有一些bug还需要时间,发表此贴主要为了抛砖引玉,让大家都来参与试用和改造程序。
, x9 m, ^8 Z& G" @0 q z魔力私服,最新魔力宝贝私服技术交流(只做了基本的优化,有很多东西还值得商榷)。
, u2 i" [; ?9 N4 d魔力私服,最新魔力宝贝私服技术交流需要.NET环境,3.5版本,大家注意framework2、3.5、4都是独立的,不代表装新版本之后就包括旧版本,有的framework安装包是整合的,用不了程序的,请研究你的framework。复制内容到剪贴板
代码:
//首先说编码转换,棒子语用的编码是ks_c_5601-1987,我们文件一般用的是GBK或者UTF-8,至少我的msg用的是GBK。
string str = Listmsg.SelectedItem.ToString();
msg m = new msg(str);
msgno.Text = m.numberout();
TXTmsgselected.Text = m.message();
msgcate.Text = m.otherout();
Encoding GBK = Encoding.GetEncoding("GBK");//定义一个GBK编码的Encoding对象
Encoding han = Encoding.GetEncoding("ks_c_5601-1987");//定义棒子编码对象
byte[] gb = GBK.GetBytes(m.message());//用GBK编码读入信息
TXTbang.Text = han.GetString(gb);//转换到棒子编码复制内容到剪贴板
代码:
private class msg
{
string[] r;
public msg(string s)
{
r=s.Split(new char[] {'\t'});
}
public string numberout()
{
if (r.Length >= 1)
return r[0];
return "可能存在错误";
}
public string message()
{
if (r.Length >= 2)
return r[1];
return "可能存在错误";
}
public string otherout()
{
if (r.Length >= 3)
return r[2];
return "可能存在错误";
}
}
//这个用来分离编号、信息和类码,由于有的msg制作不规范,用空格代替tab(/t)所以有分割之后数组不存在的风险,加了个判断就好多了,还能让错误更醒目。复制内容到剪贴板
代码:
//写入文件的代码,我没做优化,不知道速度怎么样,抱歉了。
FileStream wfs = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
StreamReader rs = new StreamReader(wfs, Encoding.GetEncoding("GBK"));
string str = rs.ReadToEnd();
string[] filewrite = str.Replace("\r\n", "\n").Split(new char[] { '\r','\n' });
filewrite[start + Listmsg.SelectedIndex] = msgno.Text + "\t" + TXTmsgselected.Text + "\t" + msgcate.Text;
rs.Close();
StreamWriter sw = new StreamWriter(FileName, false, Encoding.GetEncoding("GBK"));
for (int w = 0; w < filewrite.Length; w++)
{
sw.Write(filewrite[w]+'\r'+'\n');
}
sw.Close();
TXTmsgselected.Text = "";//简单的让输入框文字消失就代表已经存储完成了
图片附件: [界面和功能] QQ截图20130302231529.jpg (2013-3-2 23:28, 230.27 KB) / 该附件被下载次数 199
http://bbs.mocwww.com/attachment.php?aid=14972
作者: xin344 时间: 2013-3-2 23:29
忘记了附件程序魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& ]5 G" s, l$ u
Release.rar (29.59 KB)
' Z L8 \8 j- m; D* b% ~
9 n) S1 z: C8 H% U/ p- u1 N魔力私服,最新魔力宝贝私服技术交流发现部分bug需要修改,使用本程序前请备份msg
1 u! f) ~8 F' Q" y魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力宝贝私服技术交流! A2 @8 e% ]% w p1 { u
[ 本帖最后由 xin344 于 2013-3-3 23:14 编辑 ]
附件: Release.rar (2013-3-2 23:29, 29.59 KB) / 该附件被下载次数 484
http://bbs.mocwww.com/attachment.php?aid=14973
作者: nj001 时间: 2013-3-2 23:41
顶顶顶,,,嘻嘻,我来啦
作者: yaoguai 时间: 2013-3-3 09:24
不会用那环境啊
作者: fuchunyu 时间: 2013-3-3 09:52
顶顶顶,,,嘻嘻
作者: xin344 时间: 2013-3-3 12:14
引用:
原帖由 yaoguai 于 2013-3-3 09:24 发表
魔力私服,最新魔力宝贝私服技术交流2 Y/ f6 k$ o" P% s4 r" x6 p
不会用那环境啊
$ E6 Y8 S" X% I; D8 lbbs.mocwww.com你下载framework2然后下载framework3和3.5 安装了之后就可以用了。framework2一般玩游戏的都有,你主要解决3和3.5吧。
作者: yaoguai 时间: 2013-3-3 18:11
好吧 我是个程序盲 哈哈
作者: nj001 时间: 2013-3-3 19:08
我也一样,对程序很文盲
作者: yaoguai 时间: 2013-3-3 20:36
LS的 一起加油
, H0 H; l- u& a* K工具可能用多了就会了吧
作者: xin344 时间: 2013-3-3 23:16
用.NET环境是因为比较简单,制作效率高,而且关键的一点是不像e一样容易报毒。bbs.mocwww.com) r1 n& k4 A1 [
另外本人不会用e
作者: xin344 时间: 2013-3-8 23:06
修改了条目优化,有问题请留言详细情况
附件: msg乱码转换和机翻对比修改程序.rar (2013-3-8 23:06, 29.9 KB) / 该附件被下载次数 295
http://bbs.mocwww.com/attachment.php?aid=15014
作者: nj001 时间: 2013-3-9 10:44
跟之前有什么不一样了?
作者: xin344 时间: 2013-3-9 23:01
引用:
原帖由 nj001 于 2013-3-9 10:44 发表
bbs.mocwww.com( [! S1 B! _( e& n
跟之前有什么不一样了?
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート \& f# v+ v) ^) v: m0 x
给你发的那份bbs.mocwww.com: z+ @ H: N& ]2 P
+ q3 z7 u' z9 N/ ^' v—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート再有bug回帖告诉我就行了,谢谢啊
作者: nj001 时间: 2013-3-9 23:32
收到了,我继续努力去咯~~~~~韩语快翻译过来了,准备人为翻译
作者: angelxmq 时间: 2013-3-14 10:11
这个太强大了。。就是不知道翻译的准不准啊
作者: nj001 时间: 2013-3-14 10:18
LS的别想太多了,翻译肯定有点误差,还需要人翻译比较好。
| 欢迎光临 妖城在线论坛 (http://bbs.mocwww.com/) |
Powered by Discuz! 6.0.0 |