16 12
发新话题
打印

[讨论] msg.txt乱码转换工具(带原文、韩文、机翻)并可直接将修改的文本存入,附源码解析

msg.txt乱码转换工具(带原文、韩文、机翻)并可直接将修改的文本存入,附源码解析

看到过妖哥发表的translate-tool和一个朋友发的msg编辑器,t-tool的谷歌翻译挂掉了,跟谷歌收费翻译有关,另一个引擎翻译的又不尽人意,msg工具我也没下载到程序,估计和论坛挂了有关。
5 A; `7 d4 A$ C6 ?9 T! z! |bbs.mocwww.com就自己写了个C#.NET的程序,方便大家对msg进行汉化。
; ~8 A9 ^1 w5 }. ]: ?bbs.mocwww.com有一些bug还需要时间,发表此贴主要为了抛砖引玉,让大家都来参与试用和改造程序。
5 R6 Q0 p) d( M# i1 o/ a2 [0 W& b2 I—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート(只做了基本的优化,有很多东西还值得商榷)。
! [) ?  o1 F+ r7 e, F9 Z, ]; V5 z魔力私服,最新魔力宝贝私服技术交流需要.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 (230.27 KB)

2013-3-2 23:28

界面和功能

QQ截图20130302231529.jpg

本帖最近评分记录
  • 小狐狸 妖力 +10 精品文章 2013-3-4 15:06
  • xuyaoxy 妖力 +10 原创!支持一下! 2013-3-4 12:47

TOP

忘记了附件程序—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 @; W# d& I" H# p7 _& `4 _
Release.rar (29.59 KB) 4 d1 |$ r  }  f( X7 h

% V2 d1 u8 [# ?' e( _6 p- p妖城在线论坛发现部分bug需要修改,使用本程序前请备份msg0 L4 v' _, t) ^& A. B" d$ I
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ Q4 E( n7 M: \5 R4 N! a1 ]
[ 本帖最后由 xin344 于 2013-3-3 23:14 编辑 ]

TOP

顶顶顶,,,嘻嘻,我来啦
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

不会用那环境啊

TOP

顶顶顶,,,嘻嘻

TOP

引用:
原帖由 yaoguai 于 2013-3-3 09:24 发表
: ~! j+ m7 S1 q0 F1 l  `bbs.mocwww.com 不会用那环境啊
% m! n. M  X& ^: ]& ^' |妖城在线论坛你下载framework2然后下载framework3和3.5 安装了之后就可以用了。framework2一般玩游戏的都有,你主要解决3和3.5吧。

TOP

好吧 我是个程序盲  哈哈

TOP

我也一样,对程序很文盲
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

LS的 一起加油
/ u+ L8 d0 p3 R' d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート工具可能用多了就会了吧

TOP

用.NET环境是因为比较简单,制作效率高,而且关键的一点是不像e一样容易报毒。
2 G& v+ a  t4 o5 Z. [妖城在线论坛另外本人不会用e

TOP

修改了条目优化,有问题请留言详细情况

附件

msg乱码转换和机翻对比修改程序.rar (29.9 KB)

2013-3-8 23:06, 下载次数: 246

TOP

跟之前有什么不一样了?
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

引用:
原帖由 nj001 于 2013-3-9 10:44 发表
9 Y, O: }8 ], K2 s7 x妖城在线论坛跟之前有什么不一样了?
* l5 h0 W9 r- C+ |, G' A魔力私服,最新魔力宝贝私服技术交流给你发的那份妖城在线论坛! `$ t1 X! O/ ?" }3 X
妖城在线论坛7 ~: |4 Y; y9 y( R  M3 V
再有bug回帖告诉我就行了,谢谢啊

TOP

收到了,我继续努力去咯~~~~~韩语快翻译过来了,准备人为翻译
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

这个太强大了。。就是不知道翻译的准不准啊

TOP

 16 12
发新话题