ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

5桁のUNICODEについて

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 | 投稿日時 2016-10-6 10:41 | 最終変更
fjksudou  長老   投稿数: 180
xpa2.4cPT2の環境において、
UNICODE文字を使用しており、
コードが5桁の文字「𠮷」の運用に苦戦しております。

クライアント実行で、
Windows8の端末は一応正常に入力及び表示しています。
windows7の端末は空白になって表示します。当然入力はできません。

RIAで表示しようとすると強制終了します。

マニュアルには、
「サロゲート・ペア文字(4バイトのUnicode文字)については、現在対応されておりません。」
と記載があります。


皆様はどのように対応しておりますでしょうか?

RIAで正常に表示をさせたいのですが、バージョンを3.1に上げることによって対応は可能ですか?

よろしくお願いいたします。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-10-6 11:26 | 最終変更
nkmt  長老   投稿数: 1668
Windows 7
xpa3.1 クラサバ開発版で実行
その文字をUnicodeVALすると 55362 が出てきました。
入力も可能です。

ところがUnicodeCHR(55362)を
Unicode型の変数へ代入しても画面に表示されません。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-10-6 12:01
fjksudou  長老   投稿数: 180
nkmtさん
ありがとうございます。

私もUnicodeVAL同じでした。
10進数だと134071なんですよね。
ヘルプでは
「Unicodeの文字コードを表す数値 (0 〜 65,535)」
なので桁あふれしています。

3.1も同じなんですね。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-10-6 12:18
nkmt  長老   投稿数: 1668
UnicodeValで返ってきた 55362 は 10進数だと思います。

なので UnicodeChr(55362)で 𠮷 が取得出来ると思ったのですけど。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-10-6 14:33
fjksudou  長老   投稿数: 180
3.1からサロゲートペア文字のキー入力防止ができるようになったようです。

その他、なにか解決方法があれば、よろしくお願いいたします。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-10-6 15:55 | 最終変更
fjksudou  長老   投稿数: 180
一応解決いたしました。

最新版のRIAで対応できないようなので、
入力チェックでエラーにする事にしました。


参考までに下記に記します。

ユーザ定義関数を用いて、
外部コール.NETでVB
  Dim c As Char
  Dim i As Integer=0
  For Each c In 対象の項目
    i=i+1
    If Char.IsSurrogate(c) Then
      intNo=i
      Return True
    Exit For
  End If
  Next
  Return False

エラーメッセージに
MID(対象の項目,i,2)
投票数:0 平均点:0.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約