重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

XMLSocketで、
サーバーから文字列を受け取っています。
HELLOを送ってもらった場合、

myxmlsocket.onData=function(mytext){

ここで、mytextをダイナミックテキストなどで
表示すると、HELLOとなります。
しかし、
substr(0,1)とすると、何も
表示されず、
substr(0,2)とすると、Hのみ
表示されます。
一文字目を取り出そうと思っても、
一文字目は、値がなく、二文字目から
とらなくては、なりません。
なぜ、一文字目が、Hでないのか、
わかりません。
onDataの場合、なにか一文字目に送られて
いるのでしょうか。

難しいと思いますが、何かわかる人がいましたら
お願いします。

A 回答 (1件)

XMLSocketは使ったことがないのでわかりませんが、


一文字目は何なのかということについて。

trace(mytext.charCodeAt(0))

これで一文字目のアスキーコードが取得できるので
参考URLのアスキーコード一覧表をみて確認してみてください。
例えば10が返ってきたら、
[コード]の[10進数]が10となってるところを見るとNLとなっているので、一文字目は改行ということになります。

参考URL:http://e-words.jp/p/r-ascii.html
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
解決しました!!
一文字目は、予想だにしない、65279でした。
これを、検索してみると、
どうやら、Unicodeで使われる、BOM文字(最初に
ファイルのバージョンを示す、目に見えない文字)
と、判明(文字コードは、Unicodeを使っていました)。とにかく、解決できて、すっきりしました。
ありがとうございました。

お礼日時:2006/03/21 22:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!