2010-12-27 11 views
0

HI、Java Reflectionの受け渡しパラメータ

私はメソッドにそれぞれ整数、文字列が必要です。私は自分のXMLファイルから入力を読みます。私はそれがどんなタイプのインプットになるのか分からないでしょう。私はメソッドを呼び出すためにリフレクションを使用しています。私はXMLを読んで文字列として格納します。私はパラメータを渡すことによってメソッドを呼び出します。メソッドの1つに整数が必要ですが、文字列で渡します。 getTypeを実行してキャストしようとすると、クラスキャストの例外がスローされます。

Anyhelpは高く評価されます。

おかげで、 Priya.R

+0

Gurcelは、あなたがこれを行うことはできません述べたが、OPTIOがあるとしてns。実際の要件が何であるかについてもう少し理解してください。可能であれば、サンプルのxmlドキュメントと、オブジェクト/コードのサンプルを共有して –

+0

コードを表示してみてください –

答えて

4

Javaは強く言語を入力されます。整数を求めるメソッドに文字列を渡すことはできません。文字列を整数に変換する必要があります。Integer.parseInt()を使用することができます。

0

すべての入力がXMLファイル内の文字列である場合、XMLファイルと通常のテキストファイルの違いはありません。

主な問題は、データ型の表現です。つまり、XMLを使用していないということです。 XMLファイルは、入力が持つ特定のデータ型を表す必要があります。たとえば、年齢はintと表示されます。すべてを文字列としてエンコードすると、型セマンティクスが失われます。

実際のコードはXMLEncoderXMLDecoderのjavaクラスがそれぞれherehereになっています。

XMLEncoder encoder = new XMLEncoder(); 
XMLDecoder decoder = new XMLDecoder(); 

エンコード: - 整数型(encoder.writeInt(someIntValue)) として、第1の入力を書く - 2番目を書く(別名:XMLファイルにデータを保存する)

基本的に、あなたのような何かをやります文字列として入力:encoder.writeString(someStrValue) - などなど、その後

デコードするときに、あなたが最初の整数をデコードし、文字列、

関連する問題