C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: XMLファイルの作成方法


(過去ログ 117 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■68694 / inTopicNo.1)  XMLファイルの作成方法
  
□投稿者/ Djokovic (1回)-(2013/11/07(Thu) 17:43:31)

分類:[VB.NET/VB2005 以降] 

よろしくお願い致します。

VB6から、いきなり.net2010になり非常に戸惑っています。
超初心者の質問ですが、よろしくお願い致します。

VB6で作成したプログラムを、.net化しています。
コンバートしましたが、いろいろとエラーが出ており、修正をしている最中です。

エラー処置に当たり、netで調べていると、.netではINIファイルではなくXMLファイルを使用する。という件を見つけました。
このプログラム、INIファイルを使用しています。

この際、XNLファイル化を予定していますが、手動での作成方法が全く分かりません。
INIファイルは、メモ帳を立ち上げて必要な部分を書き換えていましたが、XMLファイルはどんなツールで作るかも分かりません。

という超初心者の質問ですが、手動での作成方法のサイトなどがありましたら、ご紹介して頂けるとありがたいです。
それとも、そもそもXMLは手動で作成しないものなのでしょうか?

よろしくお願い致します。<(__)>
引用返信 編集キー/
■68697 / inTopicNo.2)  Re[1]: XMLファイルの作成方法
□投稿者/ 魔界の仮面弁士 (411回)-(2013/11/07(Thu) 21:51:09)
2013/11/07(Thu) 21:58:01 編集(投稿者)

No68694 (Djokovic さん) に返信
> エラー処置に当たり、netで調べていると、
> .netではINIファイルではなくXMLファイルを使用する。という件を見つけました。

.NET だから XML にしなければならない、などということはありませんよ。

VB6 でも XML は扱われていましたし、その逆に .NET でも INI は使えます。
.NET には XML を読み書きするための標準的な機能が複数存在しているので、
ファイル形式に特にこだわりが無いのであれば、XML を使うのが手っ取り早い、
というだけの話です。app.config など。

Iniファイルを VB.NET から扱いたいのであれば、下記の DLL を使ってみては如何でしょうか。
http://jeanne.wankuma.com/library/inifile/


> このプログラム、INIファイルを使用しています。
そもそも INI ファイルは、16bit 時代の Windows の名残です。
現在というか VB6 当時も含め、設定情報の保持には、INI よりも
むしろレジストリが推奨されていました。
http://msdn.microsoft.com/ja-jp/library/cc429779.aspx


そして VBA や VB5, VB6 等には、設定情報を読み書きするために
 SaveSetting
 GetAllSettings
 GetSetting
 DeleteSetting
という標準命令が用意されていました。これらは VB.NET でも利用可能です。
http://officetanaka.net/excel/vba/tips/tips43.htm
http://www.red.oit-net.jp/tatsuya/vb/Reg.htm
当時からこれらを使っていたのであれば、移行も楽だったかも知れません。
(とはいえ、レジストリを嫌う人達には、ini ファイルが好まれるのですよね…)


ところで旧 VB のコードでは、INI ファイルはどうやって読み書きしていましたか?
標準命令の Open ステートメント等で開いていたのでしょうか。それとも、
GetPrivateProfileString API などを Declare していたのでしょうか。

もしも GetPrivateProfileString API だとしたら、下記を理解しておくと、今後の開発の役に立つかと思います。
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/special/sp06_GetPrivateProfileString.html
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/Reference/ref2_GetPrivateProfileString.html
引用返信 編集キー/
■68698 / inTopicNo.3)  Re[1]: XMLファイルの作成方法
□投稿者/ 魔界の仮面弁士 (412回)-(2013/11/07(Thu) 22:03:32)
No68694 (Djokovic さん) に返信
> このプログラム、INIファイルを使用しています。
ちなみに、コントロールのプロパティ(Text とか Value とか)であれば、
コーディング不要で XML ファイルに設定を保存しておくことができます。
http://dobon.net/vb/dotnet/programing/dynamicproperties.html
http://rucio.cloudapp.net/ThreadDetail.aspx?ThreadId=11345

まぁ、設定さえ保存できれば良いのなら、保存方法は幾らでもあります。
データベースでも CSV でも INI でも 独自のバイナリ形式でも、もちろん XML でも。
http://goo.gl/YJ3NFZ
http://msdn.microsoft.com/ja-jp/library/cc440869.aspx


> それとも、そもそもXMLは手動で作成しないものなのでしょうか?
作成することはありますね。
INI も XML もテキストファイルなので、メモ帳等で作成・編集することができます。

ただし、いわゆる設定情報の変更を利用者に行わせるつもりであれば、
設定ファイルを直接編集させるのではなく、専用の設定画面を用意しておくべきでしょう。

市販のソフトでは普通、設定画面が用意されているものですよね。


> XMLファイルはどんなツールで作るかも分かりません。
XML 編集用の専用のツールは幾つかあります。
フリーのものなら、「XMLEditor.NET」とか、Microsoft謹製の「XML Notepad」とか。

ただし、必ずしもそうした専用のツールが必要というわけではありません。
XML ファイルは、Unicode で保存されたテキストファイルに過ぎないので、
Unicode を読み書きできるエディタさえあれば、特別なツールは要りません。
メモ帳でも作ることはできます。

実際には Unicode 以外も許可されていますが、その場合、XML ファイルの先頭に
<?xml version="1.0" encoding="Shift_JIS"?> といった記述が必要になります。


XML そのものは、HTML に似た構文のデータです。具体的なサンプルはこのあたり。
http://www.webword.jp/xml/ini/index1.html
http://www.sotechsha.co.jp/xml/

今回は VB.NET をお使いなので、ソリューション エクスプローラーから、
自身のプロジェクトを右クリックして、[追加]-[新しい項目]を選択してみてください。
[データ]のテンプレートとして XML ファイルをプロジェクトに追加できます。
XML の中身は自分で書かないといけませんけれどね。
引用返信 編集キー/
■68705 / inTopicNo.4)  Re[2]: XMLファイルの作成方法
□投稿者/ Djokovic (2回)-(2013/11/08(Fri) 09:12:39)
魔界の仮面弁士さん

本当に親切ご丁寧にありがとうございます。<(__)>

ご回答の半分も理解していませんが、教えて頂いたサイトを見ながら理解していこうと思います。

恐らく、また壁にぶち当たると思いますので、その際はよろしくお願い致します。

とりあえず、コンバートはそのままにして、今後のためにご回答の理解に励みます。
このプログラムは1本目のコンバートで、まだまだたくさんあるのです・・・(T-T)

本当にありがとうございます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -