X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fstringcodec%2Fjisx0208.cpp;h=df28a376c10ff9760aafcee0cb84acd294c8fdde;hp=008a5e14fbd3dd59d4f4d5ecd455045f3b1a3d51;hb=HEAD;hpb=26636afce9c85c6c78c7267ebcd18d165825024b diff --git a/source/stringcodec/jisx0208.cpp b/source/stringcodec/jisx0208.cpp index 008a5e1..df28a37 100644 --- a/source/stringcodec/jisx0208.cpp +++ b/source/stringcodec/jisx0208.cpp @@ -9,12 +9,12 @@ namespace StringCodec { void JisX0208::Encoder::encode_char(unichar ucs, string &buf) { - unsigned short jis = ucs_to_jisx0208(ucs); + Kuten jis = ucs_to_jisx0208(ucs); if(jis) { char jbuf[2]; - jbuf[0] = jis>>8; - jbuf[1] = jis; + jbuf[0] = jis.ku+0x20; + jbuf[1] = jis.ten+0x20; buf.append(jbuf, 2); } else @@ -32,7 +32,7 @@ unichar JisX0208::Decoder::decode_char(const string &str, string::const_iterator if(i==str.end()) return -1; - string::const_iterator j = i; + auto j = i; Kuten jis; jis.ku = *j++-0x20; @@ -79,8 +79,8 @@ Kuten ucs_to_jisx0208(unichar c) Kuten result; if(ucs_to_jisx0208_table[i].ucs==static_cast(c)) { - result.ku = (ucs_to_jisx0208_table[i].jis>>8)+1; - result.ten = ucs_to_jisx0208_table[i].jis+1; + result.ku = (ucs_to_jisx0208_table[i].jis>>8); + result.ten = ucs_to_jisx0208_table[i].jis; } return result;