@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

Visual Studio での文字コード変更について

投稿者投稿内容
せんこ
会議室デビュー日: 2004/04/26
投稿数: 18
投稿日時: 2005-12-14 13:32
こんにちは。

Visual Studio .NET 2003を使用してASP.NETの開発を行っています。
VS.NET2003だとaspxなどのファイルは文字コードがデフォルトでutf-8形式
になってしまいます。
個別に「名前を付けて、***.aspx を保存」から文字コードを変更して保存
することがわかっているのですが、ソリューション全体をshift-jisなどの
別の文字コードに変更することはできないでしょうか?

なぜこのようなことをしたいかと言いますと、画面の一部においては変更が
頻繁にあるため別ファイルにし、apsx側では、
<!--#include virtual="/include.html"-->
のようにしています。
更新する人間がhtmlに詳しい人間ではないのでホームページビルダーを使用
して作成しているのですが、ホームページビルダーはutf-8に対応していません。
そのためノートパッドで文字コードを変更してから更新しています。
できればこの手間を省ければと思っています。

以上、ご存知の方がいらっしゃいましたらよろしくお願いします。
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2005-12-14 14:07
Web.configに

<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

ってとこがあるので、ここを"shift-jis"に変えれば良いです。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2005-12-14 14:14
こんにちは。

引用:

Web.configに

<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

ってとこがあるので、ここを"shift-jis"に変えれば良いです。


私も最初そう思ったのですが、よくよく質問を読んでみると、ファイル自体が utf-8 に保存されるから困ってるって事なのかな?

引用:

個別に「名前を付けて、***.aspx を保存」から文字コードを変更して保存
することがわかっているのですが、


引用:

ホームページビルダーはutf-8に対応していません。
そのためノートパッドで文字コードを変更してから更新しています。



ん〜 aspx とかは Shift_JIS で保存されているみたいですが。Web.config とかは UTF-8 ですよね。

# 質問の意味を読み違っているかな?
_________________
囚人のジレンマな日々
せんこ
会議室デビュー日: 2004/04/26
投稿数: 18
投稿日時: 2005-12-14 14:29
引用:

引用:

個別に「名前を付けて、***.aspx を保存」から文字コードを変更して保存
することがわかっているのですが、


引用:

ホームページビルダーはutf-8に対応していません。
そのためノートパッドで文字コードを変更してから更新しています。



ん〜 aspx とかは Shift_JIS で保存されているみたいですが。Web.config とかは UTF-8 ですよね。

# 質問の意味を読み違っているかな?




その通りです。
ファイル自体の文字コードとなります。

確認させてください。
aspx とかは Shift_JIS で保存されているのでしょうか?

実は、このプログラムの開発自体は外注を使ったのですが、当時から文字コードが
shift-jisでないので更新に手間がかかっていました。
そのことから開発元に対して変更してほしい旨伝えたところ、Microsoftは
utf-8を推奨しているから不可能だと言われたのです。
なのでてっきりできないのだと思っていました。
リリースから1年半経って今また文字コードのことを言われたので、本当に
できないのかどうか確認したいと思い今回書き込みました。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2005-12-14 15:01
Visual Studio のデフォルトではテキストファイルは Shift_JIS で保存されているようです。(というか VS で文字コードを変更して保存する方法が分からない。)
XML ファイルは UTF-8 ですね。

引用:

そのことから開発元に対して変更してほしい旨伝えたところ、Microsoftは
utf-8を推奨しているから不可能だと言われたのです。


保存するファイルに対して言ったんでしょうか?
もしかしたら開発元と多少の意思のズレが生じて、お互い違う事を指して言ってたんじゃないですかね。
Microsoft が保存するファイルの文字コードを UTF-8 を推奨してるってのは、私にはちょっと分かりません。

保存しているファイルが Shift_JIS でも、UTF-8 でもぼのぼのさんが仰った設定を行えば、結局出力はその文字コードになると思います。

引用:

<!--#include virtual="/include.html"-->


これって、ASP.NET でも使えるんですね。初めて知りました。
それで、インクルードする側とされる側の文字コードが違うから困っているんですね。

本当に UTF-8 で保存されています?

(いろいろ勘違いしていたらすみません)

_________________
囚人のジレンマな日々


[ メッセージ編集済み 編集者: 囚人 編集日時 2005-12-14 15:19 ]
せんこ
会議室デビュー日: 2004/04/26
投稿数: 18
投稿日時: 2005-12-14 15:25
引用:

囚人さんの書き込み (2005-12-14 15:01) より:
Visual Studio のデフォルトではテキストファイルは Shift_JIS で保存されているようです。(というか変更の仕方が分からない)
XML ファイルは UTF-8 ですね。



そうですか。
ちなみに文字コードの変更について、ファイル毎に「名前を付けて・・・保存」から
「エンコード付きで保存」というオプションを使用すればできるようです。

引用:

引用:

そのことから開発元に対して変更してほしい旨伝えたところ、Microsoftは
utf-8を推奨しているから不可能だと言われたのです。


保存するファイルに対して言ったんでしょうか?
もしかしたら開発元と多少の意思のズレが生じて、お互い違う事を指して言ってたんじゃないですかね。



なぜ文字コードが問題になるかは説明したので意思のズレはないと思っています。
この会社に限らず、外注に出すと軽々しく「それはできないんです。」という回答
をされることが多いので、おそらく適当に回答されたのだと思います。

引用:

Microsoft が保存するファイルの文字コードを UTF-8 を推奨してるってのは、私にはちょっと分かりません。

保存しているファイルが Shift_JIS でも、UTF-8 でもぼのぼのさんが仰った設定を行えば、結局出力はその文字コードになると思います。

引用:

<!--#include virtual="/include.html"-->


これって、ASP.NET でも使えるんですね。初めて知りました。
それで、インクルードする側とされる側の文字コードが違うから困っているんですね。

本当に UTF-8 で保存されています?

(いろいろ勘違いしていたらすみません)




ファイルは確かにutf-8で保存されていました。
このとき外注に出した会社でもう1つASP.NETアプリの開発を依頼したのですが、
そこでも同様でした。
ただし、この会社の別部署に依頼した案件ではshift-jisになっていました。

デフォルトはshift-jisということはわざわざutf-8に変更でもしていたのでしょうか?
そうだと理由がよくわかりませんね。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2005-12-14 15:46
引用:

ちなみに文字コードの変更について、ファイル毎に「名前を付けて・・・保存」から
「エンコード付きで保存」というオプションを使用すればできるようです。


お〜!保存ボタンの横にちっちゃいのが付いてますね。見つけられませんでした。文字コードを変えて保存したいときは、わざわざ別のエディタで行っていました。ありがとうございます。

引用:

この会社に限らず、外注に出すと軽々しく「それはできないんです。」という回答
をされることが多いので、おそらく適当に回答されたのだと思います。


何故できないのか分かりませんね。保存するファイルの文字コードを UTF-8 に推奨しているなんて少なくとも私は知りません。(もしかしたら一般的なのかな?)

引用:

デフォルトはshift-jisということはわざわざutf-8に変更でもしていたのでしょうか?


恐らくそうなのでしょう。
UTF-8 が推奨されている(内部処理は確かに Unicode が推奨されている。.NET 然り、WindowsNT 然り)、という事から拡大解釈をして、ワザワザ全て UTF-8 で保存しているのでしょう。

まぁ過ぎたものは置いておいて、解決策を考えてみます。
フォルダ以下のファイルを一括エンコードするツール等があるやもしれません。時間ができたら探してみます。せんさんも探してみてください。(XML ファイルはエンコードしないでね。)
_________________
囚人のジレンマな日々
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-12-14 21:50
VSS が、UTF-8 を理解できませんからねぇ。
なので、cs や vb ファイルを UTF-8 で保存すると、diff がとれないんですよ。

で、VSS2005 では、UTF-8 も理解できるようになったので、VS2005 では、UTF-8 で保存されているはずですよ。

って、確認しようとしたら日本語が入っているファイルがないので Shift_JIS と判断された orz
___________________________________________________________________
□ written by Jitta on 2005/12/14
□ Microsoft MVP :Visual Developer ASP/ASP.NET Oct.2005-Sept.2006

スキルアップ/キャリアアップ(JOB@IT)