• ベストアンサー

プロパティリストをVectorに出力したい場合

プロパティファイルの中身をVectorに入れたいのですが、 APIを見ると、 list(PrintStream out) 指定された出力ストリームに、プロパティリストを出力します。 と書かれてありますが、PrintStream outの部分をどうやればいいのかかわかりません・・・。 ご教授いただけたら幸いです。 よろしくお願いします。 Properties prop = new Properties(); prop.load(new FileInputStream("./test.properties")); prop.list(???);

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

  • ベストアンサー
  • m_hagizo
  • ベストアンサー率65% (31/47)
回答No.2

list(PrintStream out)がうまくできたとしても、それをVectorに一括で取り込もうとすると、かえって複雑になりますね…。 ここは1個ずつ取り出して、Vectorに格納してあげた方が良いでしょう。 ただ、そもそもPropertiesは「キーと値」のペアを格納するのに対して、Vectorは「値」を格納するものです。これをどのように格納したいのでしょうか? "キー=値"という文字列をVectorに格納するものとして、こんな感じでいかがでしょう。 Vector v = new Vector(); Enumeration enum = prop.keys(); while(enum.hasMoreElements()) { String name = (String)enum.nextElement(); String value = props.getProperty(name); v.add(name + "=" + value); }

aika25
質問者

お礼

まさにこのやり方が知りたかったんです~! 本当にありがとうございました~!(^^

その他の回答 (1)

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.1

list()を使うためには、Vectorを出力先とするPrintStreamの拡張クラスを自作しなくてはならないでしょう。 あまり効率的なやり方とは言えないように思います。 一つずつVectorに入れていく方が確実ではないでしょうか。 Vector result Enumeration enum = prop.propertyNames(); while (enum.hasMoreElements()) {  Property p = p.getProperty((String)enum.nextElement());  result.add(p); }

aika25
質問者

お礼

とってもとってもありがとうございました!(^^

関連するQ&A