OSDN Git Service

CVS最新版の全ファイルを追加
[spring-ext/ozacc-mail.git] / src / java / com / ozacc / mail / fetch / impl / sk_jp / io / FromCP932Corrector.java
1 /*\r
2  * @(#) $Id: FromCP932Corrector.java,v 1.1.2.1 2005/01/18 07:20:36 otsuka Exp $\r
3  * $Revision: 1.1.2.1 $\r
4  * Copyright (c) 2000 Shin Kinoshita All Rights Reserved.\r
5  */\r
6 package com.ozacc.mail.fetch.impl.sk_jp.io;\r
7 \r
8 /**\r
9  * FromCP932Corrector.\r
10  * <p>\r
11  * CorrectOutputStreamWriterで用いられる文字列バッファ補正クラスです。<br>\r
12  * 風間一洋さんのJavaHouse-Brewers投稿記事[14452]のCp932クラスから\r
13  * 変換表を参考にさせていただいています。<br>\r
14  * </p>\r
15  * @version $Revision: 1.1.2.1 $ $Date: 2005/01/18 07:20:36 $\r
16  * @author Shin\r
17  */\r
18 public class FromCP932Corrector extends UnicodeCorrector {\r
19     /**\r
20      * Unicode文字配列の補正を行います。\r
21      * <p>\r
22      * "MS932""Shift_JIS"エンコーディング以外で出力しようとした際の\r
23      * sun.ioやcom.msコンバータでは正常に変換できない部分を補正します。\r
24      * </p>\r
25      * @param  c     source character\r
26      * @return Result character that corrected.\r
27      */\r
28     public char correct(char c) {\r
29         switch (c) {\r
30             // ISO-2022-JPコンバータが正しく解釈しているようだ\r
31 //          case 0xff3c:        // FULLWIDTH REVERSE SOLIDUS ->\r
32 //              return 0x005c;  // REVERSE SOLIDUS\r
33             case 0xff5e:        // FULLWIDTH TILDE ->\r
34                 return 0x301c;  // WAVE DASH\r
35             case 0x2225:        // PARALLEL TO ->\r
36                 return 0x2016;  // DOUBLE VERTICAL LINE\r
37             case 0xff0d:        // FULLWIDTH HYPHEN-MINUS ->\r
38                 return 0x2212;  // MINUS SIGN\r
39             case 0xffe0:        // FULLWIDTH CENT SIGN ->\r
40                 return 0x00a2;  // CENT SIGN\r
41             case 0xffe1:        // FULLWIDTH POUND SIGN ->\r
42                 return 0x00a3;  // POUND SIGN\r
43             case 0xffe2:        // FULLWIDTH NOT SIGN ->\r
44                 return 0x00ac;  // NOT SIGN\r
45         }\r
46         return c;\r
47     }\r
48 }\r