- PR -

porpetiesファイルの読込

投稿者投稿内容
ZERO
常連さん
会議室デビュー日: 2006/12/14
投稿数: 48
投稿日時: 2007-04-04 11:30
いつも拝見させていただいています。

vb.netでJavaのpropertiesファイルを読み込ませるプログラムを考えています。
Javaで扱うように簡単に取得できるようなクラス・メソッドはないでしょうか?

現在、調べてはいるのですが、なかなか探せません。
やはり通常のテキストファイルを読み込むような形になるのでしょうか?

力不足のため申し訳有りません。

よろしくお願いいたします。
よねKEN
ぬし
会議室デビュー日: 2003/08/23
投稿数: 472
投稿日時: 2007-04-04 11:40
引用:

ZEROさんの書き込み (2007-04-04 11:30) より:
vb.netでJavaのpropertiesファイルを読み込ませるプログラムを考えています。
Javaで扱うように簡単に取得できるようなクラス・メソッドはないでしょうか?



たぶんありません。
Windowsのiniファイルに似た形式ですが、同じではないので、
iniファイルを扱うWindows APIを使うこともたぶんできないでしょう。
#仮に使えたとしても、そもそも仕様の異なるファイル形式ですから止めた方がよい


引用:

現在、調べてはいるのですが、なかなか探せません。
やはり通常のテキストファイルを読み込むような形になるのでしょうか?



propertiesファイルの正式な仕様がどうなっているか私は把握していませんが、
大筋としては、1行読み込んで「=」で分割(String.Splitメソッド)すればよだけではないでしょうか?
読み込んだ内容はハッシュテーブル系のコレクションに保存しておけばよいと思います。
(NameValueCollectionあたりがよさそうな気がします。)

ただし、このような処理でよいかどうかは、
Javaのpropertiesファイルの仕様を確認された方がよいと思います。
ZERO
常連さん
会議室デビュー日: 2006/12/14
投稿数: 48
投稿日時: 2007-04-04 11:45
返信ありがとうございます。

やはり、ないのですか・・・
残念ですけど、しょうがないですね。

よねKEN様のおっしゃる通り1行ずつ読み込んで
処理します。

ありがとうございました。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-04-04 11:48
引用:

ZEROさんの書き込み (2007-04-04 11:30) より:

vb.netでJavaのpropertiesファイルを読み込ませるプログラムを考えています。
Javaで扱うように簡単に取得できるようなクラス・メソッドはないでしょうか?


やりたいことは既にある propertyies ファイルを読み込ませたいのでしょうか。
それとも VB.NET で同じようなこと(リソースを外に出す)をやりたいのでしょうか?

前者だとしたら よねKEN さんの回答のとおりたぶん無いと思います。
ただ後者だとしたら リソース や AppSettings から読み込むことで実現できると思います。
_________________
かるあ のメモスニペット
ZERO
常連さん
会議室デビュー日: 2006/12/14
投稿数: 48
投稿日時: 2007-04-04 11:52
質問が曖昧で大変申し訳ありません。

やりたこととしては既存のpropertiesファイルを読み込ませることです。

Kazuki
ぬし
会議室デビュー日: 2004/10/13
投稿数: 298
投稿日時: 2007-04-04 12:31
propertiesファイルは
コード:
key=\
  value


みたいに複数行にかけて書くこともできるので
気をつけてください。
ZERO
常連さん
会議室デビュー日: 2006/12/14
投稿数: 48
投稿日時: 2007-04-04 12:35
Kazuki様、ご忠告ありがとうございます。

今回、読み込むpropertiesファイルは基本的に1行ずつしかありません。

しかし、複数行の時はどうすればいいか気なりますね。

時間が空いた時に考えてみようと思います。
IIJIMAS
ベテラン
会議室デビュー日: 2006/12/06
投稿数: 77
投稿日時: 2007-04-04 13:19
.propertiesファイルの拡張子を.txtに変えて、
リソース ファイル ジェネレータ (Resgen.exe) (コマンドラインツール)
http://msdn2.microsoft.com/ja-jp/library/ccec7sz1(VS.80).aspx
を使って、.resourcesに変更して、
.resourcesファイルを

ResourceReader クラス
http://msdn2.microsoft.com/ja-jp/library/system.resources.resourcereader(VS.80).aspx
ResourceManager クラス
http://msdn2.microsoft.com/ja-jp/library/system.resources.resourcemanager(VS.80).aspx
等を使ってjavaのときのように読み込むことができます。

私の今の環境ではResGen.exeは、C:\Program Files\Microsoft.NET\SDK\v2.0\Binにありました。.NET1.1でも使用したことがあります。
.resourcesはバイナリファイルですが上記の同じディレクトリにあるWinRes.exeでいじれます。
(.txtもとっておいて変更してはResGenでコンパイルと言う方法もありますが…)

追記:
そうそう、.resXファイルを使うという方法もあります。XMLテキストファイルなので簡単に編集できます。
ResXResourceReader クラス
http://msdn2.microsoft.com/ja-jp/library/system.resources.resxresourcereader(VS.80).aspx
で扱えます。ただし、system.windows.forms.dllに入っているので参照設定時注意です。


[ メッセージ編集済み 編集者: IIJIMAS 編集日時 2007-04-04 13:30 ]

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