对于日语的编码

windows : Shift-JIS

Linux : 2.4内核使用EUC编码,2.6内核中使用UTF8编码

检查文件编码  nkf -g filename

通常处理字符编码都使用iconv这个命令,但是iconv命令只能用来处理文件名,但对于文本内容的编码就无法处理了,

要想对文本内容的字符编码进行转换,就要用到nkf了

-j           : 转换为 JIS 编码(ISO-2022-JP),默认
-e : 转换为 EUC 编码
-s : 转换为 Shift-JIS 编码
-w : 转换为 UTF-8 编码(无BOM)
-Lu : 转换为 unix 换行格式(LF)
-Lw : 转换为 windows 换行格式(CRLF)
-Lm : 转换为 macintosh 换行格式(CR)
-g(--guess) : 自动判断编码并显示
--version : 显示版本
--help : 显示帮助

linux中转换成window     :   nkf -sxLw    nkf -swLw

window转换成linux         :   nkf -wxLu



    对日文字符编码的处理,Windows于Linux使用不同的字符编码,Windows中使用的日文字符编码为Shift-JIS,Linux中2.4内核使用EUC编码,2.6内核中使用UTF8编码,为了解决这个问题,可以使用nkf这个命令。通常处理字符编码都使用iconv这个命令,但是iconv命令只能用来处理文件名,但对于文本内容的编码就无法处理了,要想对文本内容的字符编码进行转换,就要用到nkf了。
    首先下载安装,我使用的是Ubuntu8.10,用apt可以很方便的进行安装。如果使用源码进行安装可自行查找相关资料。

$sudo apt-get nkf

安装好了就可以开始使用了。这里简单介绍一下nkf的使用。nkf命令使用的时候会将指定文本内容按照参数所设定的编码格式打印输出到屏幕上,并不会对原来的文本进行改变,要生成新的编码格式的文本,可以使用管道命令将结果重定向到其他文件中。先介绍几个基本参数:j,s,e,w,这几个参数分别为JIS,Shift-JIS,EUC,UTF编码,如果要使用UTF8就用w8参数,要使用UTF16就用w16参数,注意这几个字母是小写,另外还有四个大写的参数,J,S,E,W与之前对应相同的字符编码格式,大写于小写的区别在于,小写字母表示输出的编码,大写字母表示假定输入的字符编码,这里用了个“假定”这个词,man文档中是这么说的,我猜想这个意思是说,假如有一个Shift-JIS编码的文件需要转换成UTF8格式,如果指定的参数为E,那么就把这个文件的字符编码当作EUC来处理了。 帮助文档中写道可以指定输入文件和输出文件,不过根据我自己的实验好像不能将结果生成为输出文件,只能 打印到屏幕上,所以只能使用管道命令,重定向到其他文件中。例如我现在要将一个内容为Shift-JIS编码的文件转换成UTF8格式,就可以使用如下命令,这也是我们经常用到的,。
$nkf -w myfile.txt >> test
这个命令的意思就是把文件myfile.txt文件文本的内容转换成utf8的编码然后输出到文件test中,这个时候我们再浏览一下文件test文件的内容应该就能够正常显示了。
    nkf还有一个比较有趣的参数,就是可以进行平假名和片假名之间的转换。那就是-h参数,注意,很多命令的帮助档命令的参数也是-h,nkf的帮助命令为--help,-h1参数为片假名到平假名之间的转换,-h2为平假名到片假名之间的转换,-h3为双向转换,前两个参数还好理解,对于第三个双向转换,我没有做过实际验证,不做其他设想了。
    这里介绍简单的nkf命令的使用方法,具体的用法请各位参考一下man文档或者帮助命令吧,记得,nkf的帮助命令是--help,不是-h。





linux nkf 日文编码转换命令[转载]的更多相关文章

  1. linux iconv文件编码转换

    linux系统里提供的文件转化编码的命令iconv,例如: iconv -t utf-8 -f gb2312 -c test.xml > text_UTF8.xml 1 -f 源编码-t 目标编 ...

  2. linux常见的编码转换

    1.如何界定是utf-8编码还是其他如 ANSI 或者gb2312编码 以“浙”这个汉字为例,用16进制编码查看时,显示 D5 E3 为2个字节,则为 ansi或者gb2312编码 "苏&q ...

  3. Linux 环境c++ 编码转换

    #include <iconv.h> //代码转换:从一种编码转为另一种编码 static int CodeConvert(char *from_charset,char *to_char ...

  4. Linux字符编码转换 UTF8转GB3212

    在LINUX上进行编码转换时,既可以利用iconv函数族编程实现,也可以利用iconv命令来实现,只不过后者是针对文件的,即将指定文件从一种编码转换为另一种编码.    一.利用iconv函数族进行编 ...

  5. 用linux的iconv函数 转换编码

    inux shell 配置文件中默认的字符集编码为UTF-8 .UTF-8是unicode的一种表达方式,gb2312是和unicode都是字符的编码方式,所以说gb2312跟utf-8的概念应该不是 ...

  6. iconv 文件编码转换

    iconv 文件编码转换 http://www.cnblogs.com/xuxm2007/archive/2010/11/09/1872379.html 查看iconv的支持的编码: $ iconv  ...

  7. 用shell批量编码转换

    -------------------------------------文件内容转换:iconv-------------------------------------- 通常,从其他平台拷贝过来 ...

  8. linux下iconv()函数的用法(转载并修改)

    linux shell 配置文件中默认的字符集编码为UTF-8 .UTF-8是unicode的一种表达方式,gb2312是和unicode都是字符的编码方式,所以说gb2312跟utf-8的概念应该不 ...

  9. linux环境下编码的问题

    查看linux支持的编码格式: locale -a查看文件的编码格式: :set fileencodinglinux下文本编码转换: iconv -f gbk -t utf8 main.cpp > ...

随机推荐

  1. EF-CodeFirst系列100

    .学习资料地址: CodeFirst:https://msdn.microsoft.com/zh-cn/data/jj193542 一.CodeFirst迁移(Migration) .工具--> ...

  2. ffmpeg+nginx+video实现rtsp流转hls流,通过H5查看监控视频

    一.FFmpeg下载:http://ffmpeg.zeranoe.com/builds/ 下载并解压FFmpeg文件夹,配置环境变量:在“Path”变量原有变量值内容上加上d:\ffmpeg\bin, ...

  3. Java 中的包装类

    Java 中的包装类 相信各位小伙伴们对基本数据类型都非常熟悉,例如 int.float.double.boolean.char 等.基本数据类型是不具备对象的特性的,比如基本类型不能调用方法.功能简 ...

  4. HDU 1358 Period (kmp判断循环子串)

    Period Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submis ...

  5. [转][ASP.NET]ASP.NET 预编译网站

    [转自]https://msdn.microsoft.com/zh-cn/library/ms227430(v=vs.80).aspx C:\Windows\Microsoft.NET\Framewo ...

  6. Educational Codeforces Round 37-F.SUM and REPLACE题解

    一.题目 二.题目链接 http://codeforces.com/contest/920/problem/F 三.题意 给定$N$个范围在$[1, 1e6)$的数字和$M$个操作.操作有两种类型: ...

  7. 二.jQuery源码解析之构建jQuery之构建函数jQuery的7种用法

    一:$(selectorStr[,限制范围]),接受一个选择器(符合jQuery规范的字符串),返回一个jQuery对象; 二:$(htmlStr[,文档对象]),$(html[,json对象])传入 ...

  8. python的with用法(参考)

    一.With语句是什么? 有一些任务,可能事先需要设置,事后做清理工作.对于这种场景,Python的with语句提供了一种非常方便的处理方式.一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中 ...

  9. Windows下测量cpu利用率的类

    方法参考网上的一段代码,把它改成了类以方便调用,很简单,但是可以一用,哈哈. cpu_usage.h #include <windows.h> class CpuUsage { publi ...

  10. 「小程序JAVA实战」小程序的举报功能开发(68)

    转自:https://idig8.com/2018/09/25/xiaochengxujavashizhanxiaochengxudeweixinapicaidancaozuo66-2/ 通过点击举报 ...