HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0712
ケーボcnvwtosについて2未解決


ケーボ

リンク

2008/7/12(Sat) 23:56:44|NO.17268

cnvwtos命令をつかってUTF-16の文字を通常の文字列(Shift_JIS)に変換しました。
しかし、なぜか変換後の文字列の一番先頭に「?」が付きます。
これは、1文字目を削除すればいいだけなんですが、
ほかの人もこのような現象がおきますか?



この記事に返信する


ケーボ

リンク

2008/7/13(Sun) 12:09:25|NO.17270

追加します。
変換もとの文字列は、wordpadでUnicode保存したHTMLソースをnoteloadで
読み込んだものです。



ANTARES

リンク

2008/7/15(Tue) 00:23:00|NO.17306

>なぜか変換後の文字列の一番先頭に「?」が付きます。
 それはBOM(=byte order mark=バイト順序マーク)というものです。
Windowsは原則としてユニコードをリトル・エンディアンで扱うので、
ファイルの先頭に$FF,$FEの2バイトが書き込まれます。
 ビッグエンディアンの場合は$FE,$FFになります。
Windows XP(Vistaでもいいかも)をお使いなら、保存したファイルを
メモ帳で開き、「名前を付けて保存」で「文字コード」に
「Unicode big endian」を指定して保存して見てください。
メモ帳では開けますが、wordpadで開くと文字化けします。

 つまり、削除する前に$FF,$FEであるかどうかをチェックした方が
いいということです。



ONION software Copyright 1997-2023(c) All rights reserved.