2

xml ファイルをディレクトリに保存する必要があります ...形式が整っていない場合。失敗の理由を分析するだけです。

xml 要求を catch ブロックのディレクトリに保存するにはどうすればよいですか?

私はそれをやってみました..しかし、tryブロックで作成された変数は、catchブロックで未定義のようです。私は初心者です...基本的な質問でしたら申し訳ありません。解決策はありますか?

  try {
  Create a well formed xml request
  open a http connection and post it
   }
  //catching all exceptions here
  catch (Exception e) {

  e.printStackTrace();
  }
4

4 に答える 4

3

{} 中かっこは、try ブロック内にある変数をスコープしているため、そのスコープ外では使用できません。次のようなことができます。

String xml = null;
try {
  xml = ...; //Create a well formed xml request

  //open a http connection and post it
} catch (Exception e) {
    if (xml != null) {
        // write XML to file
    }
}
于 2013-02-05T22:20:35.967 に答える
0

try ブロックの外/前に変数を定義すると、catch 内で使用できます。しかし実際には、try/catch エラー処理をフロー制御として使用している理由を考慮する必要があります。

于 2013-02-05T22:21:08.070 に答える
0

try ブロックの外側で変数を宣言する必要があります。

XmlDocument xml = null;
try {
  xml = Create a well formed xml request
  open a http connection and post it
}
catch (Exception e) {
  xml.save();
}

あなたが言ったように、try ブロック内で宣言された変数は catch ブロックでは使用できないため、外側に配置する必要があります

于 2013-02-05T22:24:26.237 に答える
0

内側のブロックに新しい要素を作成すると、そこから到達できなくなります。

したがって、try ブロックで何かを作成すると、その上に表示されます。ブロックの外に到達することはできません。

したがって、問題については、try ブロックから xml リクエストを作成する必要があります。このようなもの;

Create a well formed xml request
try {
    open a http connection and post it
}
//catching all exceptions here
catch (Exception e) {
    e.printStackTrace();
}
于 2013-02-05T22:25:08.620 に答える