`
trydofor
  • 浏览: 150549 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

日文编码SHIFT_JIS/MS932使用

阅读更多

总结:在多数情况下,使用MS932代替SHIFT_JIS,可减少乱码。

-----------------------------------------------------------------------------


参考:http://www.asteria.com/tutorial/asbook320_application_read.html



(6) Differences Between Shift_JIS and Windows-31J

 

 

As we mentioned earlier, Shift_JIS and Windows-31J employ different character sets and codes. This means that you must use different mapping converters when converting between them and Unicode.

The table below gives you the differences between Shift_JIS and Windows-31J at a glance:

・Mapping from Shift_JIS/Windows-31J to Unicode

JIS X 0208 characters Shift_JIS/Windows-31J codes Shift_JIS→Unicode Windows-31J→Unicode
~ (1-33, WAVE DASH) 8160 U+301C U+FF5E
∥ (1-34, DOUBLE VERTICAL LINE) 8161 U+2016 U+2225
- (1-61, MINUS SIGN) 817C U+2212 U+FF0D
¢ (1-81, CENT SIGN) 8191 U+00A2 U+FFE0
£ (1-82, POUND SIGN) 8192 U+00A3 U+FFE1
¬ (2-44, NOT SIGN) 81CA U+00AC U+FFE2
IBM extensions   No Yes
NEC extensions   No Yes

User-defined characters are mapped into the Unicode Private Use Area as shown in the table below:

Converter Shift_JIS range Unicode range
Windows-31J F040~F9FC E000~E757

・Mapping from Unicode to Shift_JIS/Windows-31J

Unicode characters Unicode codes Shift_JIS Windows-31J
∥ (DOUBLE VERTICAL LINE) U+2016 8161 ×
- (MINUS SIGN) U+2212 817C ×
~ (WAVE DASH) U+301C 8160 ×
- (FULLWIDTH HYPHEN-MINUS) U+FF0D × 817C
~ (FULLWIDTH TILDE) U+FF5E × 8160
¢ (FULLWIDTH CENT SIGN) U+FFE0 × 8191
£ (FULLWIDTH POUND SIGN) U+FFE1 × 8192
¬ (FULLWIDTH NOT SIGN) U+FFE2 × 81CA

To sum up, Shift_JIS and Windows-31J differ in the following ways:

 

  • Windows-31J can handle the additional characters from IBM and NEC.
  • Code points differ for some symbols when they are converted into Unicode.
  • In general, if you stick with Windows-31J, which is the larger character set, you shouldn't have any problems.

     

------------------------------ JDK 源代码摘要 --------------------------------------
  134           charset("Shift_JIS", "SJIS",

  135                   new String[] {

  136                       // IANA aliases

  137                       "sjis", // historical

  138                       "shift_jis",

  139                       "shift-jis",

  140                       "ms_kanji",

  141                       "x-sjis",

  142                       "csShiftJIS"

  143                   });

  144   

  145           // The definition of this charset may be overridden by the init method,

  146           // below, if the sun.nio.cs.map property is defined.

  147           //

  148           charset("windows-31j", "MS932",

  149                   new String[] {

  150                       "MS932", // JDK historical

  151                       "windows-932",

  152                       "csWindows31J"

  153                   });

  154   

  155           charset("JIS_X0201", "JIS_X_0201",

  156                   new String[] {

  157                       "JIS0201", // JDK historical

  158                       // IANA aliases

  159                       "JIS_X0201",

  160                       "X0201",

  161                       "csHalfWidthKatakana"

  162                   });

------------------------------

public class CharToByteMS932 extends CharToByteMS932DB {
    CharToByteJIS0201 cbJIS0201 = new CharToByteJIS0201();
    ... ...
------------------------------
public class CharToByteSJIS extends CharToByteJIS0208 {
    CharToByteJIS0201 cbJIS0201 = new CharToByteJIS0201();
    ... ...
------------------------------

分享到:
评论

相关推荐

    Shift_JIS_table(unicode)码表

    1. **日文游戏汉化**:对于那些使用Shift_JIS编码的日文游戏而言,通过理解该编码表,可以更准确地进行游戏内文字的汉化工作。例如,如果游戏中存在类似“主角名字”这样的可编辑字段,那么就可以利用Shift_JIS码表...

    日文Shift_JIS码表

    在描述中提到的“完整的”意味着这份Shift_JIS码表包含了所有可能的Shift_JIS编码,涵盖了从基本的ASCII字符到复杂的日文汉字和符号。`Shift_JIS_table(unicode).txt`文件很可能是这样一个详细的列表,其中每个行...

    Shift JIS编码表

    Shift JIS编码是一种广泛用于日文文本编码的字符集,特别是在日本的个人计算机系统和网络中。这种编码标准是IBM的Extended Kanji Code(JIS X 0208)和Microsoft的MS-Kanji之间的混合体,它最早在1978年由日本电气...

    码表JIS_table(unicode)

    例如,当你从一个使用Shift_JIS编码的日文网站上复制文本,然后粘贴到一个基于Unicode的文本编辑器中时,编辑器会使用这样的映射表将Shift_JIS编码转换为Unicode,从而正确显示日文字符。 总的来说,Shift_JIS到...

    Shift-JIS-A.tbl

    Shift-JIS-A编码字符表 Shift-JIS-A编码字符表 Shift-JIS-A编码字符表

    jis.rar_jis0208_日文编码

    jis.rar_jis0208_日文编码这个文件包主要涉及的是日文字符编码标准JIS X 0208的相关知识。JIS X 0208是日本工业标准(Japanese Industrial Standard)中定义的一种字符编码系统,主要用于表示日本汉字、假名和其他...

    日语编码换换器

    《日语编码转换器》是一款专门用于解决日语编码问题的工具,主要功能是将日语的Shift-JIS编码转换成BIG5(通常称为BGK)编码,以便于处理那些因编码不匹配导致的乱码TXT文件,使其能正确显示。在IT领域,尤其是在...

    JapaneseCharsetConvert:日语字符集转换

    Shift_JIS 通过映射到 windows-31j (MS932) 对应于从属字符。 对于 JIS (ISO-2022-JP),它通过映射到 x-windows-iso2022jp 对应于等效于 MS932 的依赖字符。在代码中,应使用 Shift_JIS 和 ISO-2022-JP。 JavaMail ...

    CHCS 日语(Shift-JIS)显示

    Shift-JIS是日本广泛使用的字符编码标准,尤其在早期的个人电脑系统中非常常见。这个系统允许在DOS环境下处理日语文字,使得非日本本土的CHCS用户也能查看和操作日语数据。 描述进一步解释了移植的内容:仅限于显示...

    简体汉字转日文汉字(GB2Shift-JIS) 版本1.0 适用于 MD 机 OpenMG Jukebox 碟名及歌名日文汉字的输入

    简体汉字转日文汉字(GB2Shift-JIS) 版本1.0(适用于 SONY Net-MD 机 OpenMG Jukebox 碟名及歌名日文汉字的输入)

    arcgis js api 使用的字体,arial-unicode-ms-regular和bold

    Arial Unicode MS是一款全面支持Unicode标准的无衬线字体,设计用于显示各种语言的字符,包括但不限于英文、中文、日文、韩文等多国文字,覆盖了超过230个语言的字符集。 在使用ArcGIS JS API时,开发者可能会遇到...

    big5码、Shift-JIS码编码表,tbl格式

    标题中的“big5码”和“Shift-JIS码”是两种不同的字符编码方式,它们主要用于存储中文和日文字符。在计算机系统中,文本数据是以二进制形式存储的,而编码表则提供了将这些二进制数据转换为人类可读的字符的规则。 ...

    JIS标准编码字符汇总文件包

    《JIS标准编码字符汇总文件包》是针对日文字符编码的一个重要资源,它涵盖了多种JIS(Japanese Industrial Standards)编码体系,对于理解和处理日文文本具有极高的价值。JIS编码是日本广泛采用的标准,它规定了字符...

    日文字库Sjis码表

    在本文中,我们将深入探讨SJIS(Shift_JIS)编码和GBK编码,以及它们之间的关系和转换。 ### SJIS编码 SJIS,全称Shift JIS(日本工业标准JIS X 0201和JIS X 0208的变体),是一种用于日文的多字节编码方案。它...

    jconv:用于日语字符编码的纯JavaScript转换器

    此模块支持日语中常用的编码: Shift_JIS(CP932),ISO-2022-JP(-1),EUC-JP,UTF8,UNICODE(UCS2)转换。 纯Javascript,无需编译。 比快得多。 安装 $ npm install jconv 用法 例如,简单地从EUC-JP转换...

    Ruby 中关于日文转UTF-8及半角全角转换的技巧

    1.日文转UTF-8 Iconv.new(‘cp932’, ‘utf-8’)与Iconv.new(‘shift_jis’, ‘utf-8’)的区别 Iconv.new(‘shift_jis’, ‘utf-8’)不支持以下的格式: 課№001-18 XXXXXXX 而只能把字符窜中的№换成No.才行 但是...

    libiconv库 实现一个字符编码到另一个字符编码的转换 已编译成dll,lib

    libiconv库 [1]为需要做转换的应用提供了一个iconv的函数...EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP, ISO-2022-JP-2, ISO-2022-JP-1 中文 EUC-CN, HZ, GBK, GB18030, EUC-TW, BIG5, CP950, BIG5-HKSCS, ISO-2022-CN, IS

    日文linux服务器配置

    这里解压了“SHIFT_JIS.gz”文件,并尝试使用SHIFT-JIS编码创建一个新的本地化环境“ja_JP.SJIS”。需要注意的是,“character map `SHIFT_JIS' is not ASCII compatible, localename is not ISOCcompliant”这一行...

    日文乱码转换工具

    日文乱码尤其常见,因为日语使用了多种字符集,包括平假名、片假名和汉字,这些字符在不同的编码标准(如Shift-JIS、EUC-JP、UTF-8等)中有不同的表示方式。 【描述】提到的"Locale Emulator 2.4.0.0官方版"是一个...

    sourceinsight 日文注释乱码问题解决

    若源代码文件使用了其他编码,如Shift_JIS或EUC-JP,你需要在Source Insight中进行相应的设置。 接下来,我们将介绍如何在Source Insight中设置正确的编码: 1. 打开Source Insight,进入“Tools”(工具)菜单,...

Global site tag (gtag.js) - Google Analytics