一段Big5繁体转换简体GB2312的程序
2006-05-25 09:05
453 查看
using System;
using System.IO;
using System.Text;
using System.Runtime.InteropServices;
//Big5繁体转换简体的程序
public class EncodeTool
{
[DllImport("kernel32.dll", EntryPoint = "LCMapStringA")]
public static extern int LCMapString(int Locale, int dwMapFlags, byte[] lpSrcStr, int cchSrc, byte[] lpDestStr, int cchDest);
const int LCMAP_SIMPLIFIED_CHINESE = 0x02000000;
const int LCMAP_TRADITIONAL_CHINESE = 0x04000000;
public static void Main (String[] args)
{
if (args.Length<1)
{
Console.WriteLine("请指定路径!");
}
String[] files=Directory.GetFiles(args[0]);
if(args.Length==2)
files=Directory.GetFiles(args[0],args[1]);
String dir=args[0]+"\\conv";
if(!Directory.Exists(dir)){
Directory.CreateDirectory(dir);
}
for(int i=0;i<files.Length;i++){
StreamReader sr = new StreamReader(files[i],Encoding.GetEncoding("big5"));
String lines=sr.ReadToEnd();
sr.Close();
lines=ConvertString(lines);
//Console.WriteLine(lines);
StreamWriter sw = new StreamWriter(dir+",false,encoding.getencoding(%22gb2312/]\\"+files[i],false,Encoding.GetEncoding("gb2312"));
sw.WriteLine(lines);
sw.Close();
Console.WriteLine("转换 {0} ok!",files[i]);
}
}
public static String ConvertString(String lines){
Encoding gb2312 = Encoding.GetEncoding(936);
byte[] src=gb2312.GetBytes(lines);
byte[] dest = new byte[src.Length];
LCMapString(0x0804, LCMAP_SIMPLIFIED_CHINESE, src, -1, dest, src.Length);
return gb2312.GetString(dest);
}
}
using System.IO;
using System.Text;
using System.Runtime.InteropServices;
//Big5繁体转换简体的程序
public class EncodeTool
{
[DllImport("kernel32.dll", EntryPoint = "LCMapStringA")]
public static extern int LCMapString(int Locale, int dwMapFlags, byte[] lpSrcStr, int cchSrc, byte[] lpDestStr, int cchDest);
const int LCMAP_SIMPLIFIED_CHINESE = 0x02000000;
const int LCMAP_TRADITIONAL_CHINESE = 0x04000000;
public static void Main (String[] args)
{
if (args.Length<1)
{
Console.WriteLine("请指定路径!");
}
String[] files=Directory.GetFiles(args[0]);
if(args.Length==2)
files=Directory.GetFiles(args[0],args[1]);
String dir=args[0]+"\\conv";
if(!Directory.Exists(dir)){
Directory.CreateDirectory(dir);
}
for(int i=0;i<files.Length;i++){
StreamReader sr = new StreamReader(files[i],Encoding.GetEncoding("big5"));
String lines=sr.ReadToEnd();
sr.Close();
lines=ConvertString(lines);
//Console.WriteLine(lines);
StreamWriter sw = new StreamWriter(dir+",false,encoding.getencoding(%22gb2312/]\\"+files[i],false,Encoding.GetEncoding("gb2312"));
sw.WriteLine(lines);
sw.Close();
Console.WriteLine("转换 {0} ok!",files[i]);
}
}
public static String ConvertString(String lines){
Encoding gb2312 = Encoding.GetEncoding(936);
byte[] src=gb2312.GetBytes(lines);
byte[] dest = new byte[src.Length];
LCMapString(0x0804, LCMAP_SIMPLIFIED_CHINESE, src, -1, dest, src.Length);
return gb2312.GetString(dest);
}
}
相关文章推荐
- 【转】 C#中将Big5繁体转换简体GB2312的代码
- 中文简体(GBK)与繁体(BIG5)的转换
- (转)简体繁体转换代码(Big5-GB | GBK简体-GBK繁体)
- [中文文字转换组件 1.0] 简体/繁体/BIG5互转组件
- JavaScript 简体繁体转换小程序
- 中文简体(GBK)与繁体(BIG5)的转换
- 繁体转换简体的程序(c#)
- PHP 实现中文简体转换繁体程序
- 汉字简体繁体转换
- 简体繁体转换JS(JavaScript)脚本
- 如何制作简体中文GBK/繁体中文Big5的Codepage
- 整站简体中文和繁体中文转换
- 基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
- JavaScript简体繁体中文转换
- thinkphp页面的简体、繁体、英文之间的转换
- java调用opencc,将简体中文转换成繁体
- 简体中文转换为繁体中文的PHP函数
- 繁体文字转换为简体文字的办法
- [原创软件]中文简体、繁体、BIG5互转
- 易语言将数值转换为人民币金额的简体或繁体大写形式