受け取るデータの文字エンコーディングが、Shift_JISと聞いていたので、
文字列のバイト数チェックをShift_JISでやっていたのですが、思ったよう
に動かず、もしかしてと思って確認するとMS932でした。。。
ちょっと、うっかりしてました。
原因はこれ、"−"は変換では「[全]マイナス」という表記で表示されているもの。
String str = "−";
System.out.println("SJISの場合は[" + str.getBytes("Shift_JIS").length + "]");
System.out.println("MS932の場合は[" + str.getBytes("MS932").length + "]");
↓
SJISの場合は[1]
MS932の場合は[2]
全角文字のバイト数で違いがあるのですね。