• ベストアンサー

Visual Studioで ユニコード "~" が0xff5eと解釈されるが0x301cと解釈してもらいたい。

Visual Studioで ユニコード "~" が0xff5eと解釈されるが0x301cと解釈してもらいたいのですが可能でしょうか? プログラム中で置き換えるしかないのでしょうか? そうなると全ての文字に対して0xff5eか調べなくてはならず嫌なのですが。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

 前回の補足です。  windowsはシフトJISの世界です。そして、シフトJISには全角チルダは存在しません。あるのは波ダッシュのみです。ところが、波ダッシュをwindowsの世界でユニコード変換すると全角チルダのコードに変換されてしまいます。キーボードから0x301cに対応する文字を入力する方法はわかりませんが、IMEパッドの文字一覧から0x301cに対応する波ダッシュは入力できます。しかし期待通りに動作するかはわかりません。 なんか上手く説明できなくてごめんなさい。

yozakura20
質問者

お礼

回答ありがとうございます。 Web上にあるデータを取得した時に起きた問題です。windowsには無い文字があったんですね。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.3

以下のものは回答ではありません。    ユニコードで0xff5eは全角チルダであり、0x301cは波ダッシュです。この2つは別物ですが、Windowsのユニコード対応アプリケーションでユニコード保存すると、波ダッシュは0x301cではなく、なぜか0xff5eというコード番号で保存されてしまうのです。これはwindowsのUnicode問題として、DTPやWebの業界では有名なお話です。このことが影響しているのでしょうか? つまり、あなたが0x301cのつもりで作成したデータが実は0xff5eで作成されていたということは考えられませんか? 以上、あくまで参考としてお読みください。 

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.2

#1です。 投稿の編集時にはff5eと301cとを区別できたのですが、 投稿結果を見ると同じ"~"になってしまいました。 私のせいではありません。

yozakura20
質問者

補足

区別できたってことは文字列として0x301cを入力できるってことですか?

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.1

~ は ff5e 以外のなにものでもないです。 301c は ~ であって、ff5e とは全く別の文字です。 ~(ff5e)を ~(301c)と解釈したいのであれば、 むりやり置き換えるなどの手立てが必要ではないかと思います。素人考えでは…。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • visual studio2010 文字コード

    visual studio2010を使っています。Cのプログラムを書いてます。 文字セットを選ぶ箇所で ・マルチバイト文字セットを使用する ・Unicode文字セットを使用する という2つの選択肢がありますが、 上を選ぶとshift-jisの文字コードが選ばれると認識してます。 それで、下のUnicode文字セットを使用するを選んだ場合なんですが、 これはutf-16のことですか? utf-8が主流だと思っていたのでここでさすUnicodeが勝手に utf-8のことだと思ってたんですが、 visual studioで扱っている方はワイド文字で、 utf-8について調べたらASCIIにも対応できる可変長のマルチバイト という風に書いてあったので、あれ?と思い色々調べたら ウィンドウズではメモ帳などでUnicodeという表記でutf-16を指すみたいなので これも同じでutf-16なのかなと思いました。 ただ、visual studioで扱うUnicodeはワイド文字ということと、 utf-16は2バイト固定ではなく2バイト単位なだけで 4バイトで1文字を表すこともあることが書いてあったので、 これはワイド文字とは違う??と混乱してます。 それともワイド文字は2バイト固定と思ってたんですが wchar_tが2バイトずつなだけでワイド文字は1文字2バイトというわけではない ということでしょうか? それとwchar_tで2個分で1文字を表したりする使い方はするんでしょうか? まとまりのない質問になってしまいましたがよろしくおねがいします。

  • Visual Studio 6.0 Professional → Visual Studio 2005 Professional

    質問1 現システムで下記開発環境を用いて、開発したシステムがあります 本システムをVisual Studio 2005 Professional のみで再開発することは可能でしょうか? 現システム  1.Visual Studio 6.0 Professional   Visual Basic 6.0 Visual C++ 6.0  2.Borland C++ Builder 6 Professional 質問2  Visual Studio 6.0 Professional(Visual Basic 6.0 Visual C++ 6.0)で開発したプログラムを Visual Studio 2005 Professionalでコンパイルすることは可能なのでしょうか?

  • Visual Studio 2005は、どれを買えばいいでしょうか?

    無謀にも、Visual Studio 2005に手を出そうかと考えています。全く新しく1からプログラムすることは、無いと思いオフィスとの連携が主流になると思われます。すると、Visual Studio 2005 Professional Edition の中から選択となると思いますが、どれを買えばいいのでしょうか?例えば、Tools for the Microsoft Office Systemでは、Visual C++; Visual J#(プログラムが組める訳ではありません)が使えないとありますが、万が一将来プログラムの実力がついた場合で単体で買い足せば、with MSDN Professional Subscriptionと同じになるのでしょうか?オフィスを中心とする程度ならば、買い足す必要も無いのでしょうか?(Visual C#;Visual C++; Visual J#の違いも理解していない状態で厚かましい質問すみません) どなたか?詳しい方教えて頂けないでしょうか?宜しくお願い致します。

  • Visual Studioで作られたプログラムを読みたいです

    都合により、他人がVisual Studioで作ったC++のプログラムを理解しなければならなくなりました。 C言語はごく一般的な内容ならば理解できますし、C++もある程度はわかるのですが、どうもVisual Studio特有の作成、記述方法?のようなものにはまってしまい、まったく進まないのが現状です。 どなたか、Visual Studioで作られたプログラムの総合的な解説を行っているサイトなどを紹介していただけないでしょうか?できれば初心者向けの内容でお願いいたします。

  • Visual Studio C++のデータ入力

    C言語を一から勉強しています。 Visual Studio C++を使ってプログラムを入力していて、デバッグの際にscanfでテストデータを入れたいのですが、入力の方法が分かりません。 どうやったらよいのでしょうか。 Visual Studio 2019で、C++のコンソールアプリケーションというものを使っています。

  • Visual Studio 2005 C++で作成したプログラムが98で動くか

    XP上のVisual Studio 2005 C++で作成したプログラム はWindows 98上で動作するでしょうか?

  • Visual Studio .NET (C++) は今でも購入可能でしょうか?

    MicrosoftのC++開発環境の現行商品は全て「Visual Studio 2005」に切り替わっているのでしょうか?Amazonで「Visual Studio .NET 2003」を買おうと思ったのですが、手に入らないようです。(「Visual Studio 2005」をいったん購入したのですが、いっしょに使おうとしたソフトとの相性が悪く使えないので、実績のある「Visual Studio 2005」に戻そうとしています。LIBCD.libとかSTL関連ライブラリとのリンクがうまくいきません。)

  • visual studio 2010 削除したい

    microsoft visual studio 2010 をアンインストールしたく、プログラムの追加と削除で削除したのですが、 他にも visual studio と付くものがたくさん残ります。 2010と付くものは全て手動で消してしまおうとしていますが、大丈夫でしょうか? 関係ないものは全て消したいのでご存知の方がいれば教えてください。

  • Visual Studio 2017C#

    下記のVisual Studio 2017 C# 19行目のXの定義がありません。 と出ました。 11行目で定義していると思うのですけど…。 どういうことなのか教えてください。 ご多忙のところ恐れ入りますが、ご回答のほどよろしくお願いします。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace jump25 { class Test { public int x = 10; } class Program { public static void Main(string[] args) { Test obj = new Test(); int y = object.x; Console.WriteLine(y); } } }

  • Visual Studio C++ と Pro*C/C++について

    Visual Studio 2008とPro*C/C++を使ってOracleのDBを操作するシステムを考えています。 Oracleのバージョンは10gを予定しています。 Visual Studioが最新バージョンのため、Pro*C/C++のプリコンパイ ラがサポートしていないという懸念があります。 問題ないでしょうか? もし問題があればOracleを11gもしくは、Visual Studioを2005にすれ ばいいでしょうか? 教えてください。 よろしくお願いします。