对于日语的编码

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. Spring AOP 实现读写分离

    原文地址:Spring AOP 实现读写分离 博客地址:http://www.extlight.com 一.前言 上一篇<MySQL 实现主从复制> 文章中介绍了 MySQL 主从复制的搭 ...

  2. WebKit的已实施srcset图像响应属性

    WebKit已经发布了一些官方新闻,终于落实srcset的属性.作为W3C的响应图像社区组的主席,我一直希望这一刻到来有一段时间了.所以,对所有参与方是个好消息,用户浏览网页时的体验是最重要的. 所有 ...

  3. python3_爬虫_爬百度音乐

    工具及环境 1.操作系统:windows 64位系统 2.软件工具:谷歌浏览器.pycharm集成开发工具 3.第三方库:request 注:如果第三方库搭建有困难,请看博客:https://www. ...

  4. VCS双机原理

    VCS双机的配置目录:/etc/VRTSvcs/conf/config/main.cf VCS双机的监控脚本目录:/opt/VRTSvcs/bin/mdcc/ VCS双机日志目录:/var/VRTSv ...

  5. Hive 安装操作

    本篇为安装篇较简单: 前提:1: 安装了hadoop-1.0.4(1.0.3也可以)正常运行2:安装了hbase-0.94.3, 正常运行 接下来,安装Hive,基于已经安装好的hadoop,步骤如下 ...

  6. 操作表单域中的value值

    HTML <form action=""> <input type="radio" name="sex" value=&q ...

  7. Selenium2+python自动化64-100(大结局)[已出书]

    前言 小编曾经说过要写100篇关于selenium的博客文章,前面的64篇已经免费放到博客园供小伙伴们学习,后面的内容就不放出来了,高阶内容直接更新到百度阅读了. 一.百度阅读地址: 1.本书是在线阅 ...

  8. 页面白屏并且报错PHP Parse error: syntax error, unexpected end of file in 试了很久总算解决了

    页面白屏并且报错PHP Parse error:  syntax error, unexpected end of file in 试了很久 啥短标记,打开,都试了 最简单的办法 是重新建立一个文件, ...

  9. c#二维码建立与识别

    QrCodeEncodingOptions options = new QrCodeEncodingOptions(); options.CharacterSet = "UTF-8" ...

  10. leetcode738

    public class Solution { public int MonotoneIncreasingDigits(int N) { var num = N.ToString(); var len ...