1

私は正確にこのフォームにしたい文字列を作成しようとしています:

      <atom:link rel="name" type="html" href="http://www/data/name/1"/>

私はこれを試しています:

     String astring = "<atom:link rel="+"name"+" "+"type="+"html"+" "+"href="+"http://www/data/name/"+id+"/>"

そして、私はこれを取ります:

&lt;atom:link rel=name type=html href=http://www/data/name/1/&gt;

これについてのアイデアはありますか?

4

5 に答える 5

6

二重引用符は、文字列リテラル内のバックスラッシュでエスケープする必要があります:

String astring = "<atom:link rel=\"name\" type=\"html\" href=\"http://www/data/name/1\"/>";
于 2012-05-23T10:12:34.923 に答える
2

見て StringEscapeUtils

于 2012-05-23T10:13:52.023 に答える
0

気分を害することはありませんが、あまりググったり、エスケープしている根本的な問題を理解しようとしたりしていないようです。これはデータ形式とプログラミングの基本的な概念であるため、ウィキペディアのエスケープ文字に関するページを次に示します。

次に、(1) Java 文字列と (2) xml のコンテキストでのエスケープの概念を自分で調査する必要があります。

于 2012-05-23T10:15:48.333 に答える
0

あなたの問題は何ですか?二重引用符がありませんか?またはエスケープ < > ?

二重引用符がない場合は、文字列に二重引用符を入れていないためです。のようなことをしてください"rel=\"name\""

後者については、文字列をテキスト ノードとして配置し、XML ライターにデータを書き出させたに違いありません。XML では< >、文字列を適切に表示するためにエスケープする必要があるためです。特定の xml node 内に単純な文字列を指定して XML 構造を作成することを期待しないでください。XML API を使用して、この XML 構造を適切に構築してください。

于 2012-05-23T10:17:07.890 に答える