- PR -

SAXと特殊文字

1
投稿者投稿内容
A.K.渡邉
常連さん
会議室デビュー日: 2004/11/15
投稿数: 30
投稿日時: 2005-09-29 05:32
SAXを使ってパラメーター付きのURLを読み込むときにうまくいきません。
例)
<link>http://www.hoge.jp/index.jsp?key=hoge&value=hogehoge</link>

となっていた場合、public void characters(char[] ch, int offset, int length)メソッド内のnew String(ch, offset, length)の値が「http://www.hoge.jp/index.jsp?key=hoge」となり、「&」以降を読み込みません。また「&」を「&amp;」としても同じ結果になります。

それだけではなく<link>タグ内を一度で読み込まず、
1)一度目のnew String(ch, offset, length)の値:http://www.hoge.jp/index.jsp?key=hoge
2)二度目:&
3)三度目:value=hogehoge

と三度に分けて読みます。特殊文字付きの値を一度で読み込むような方法がありますでしょうか?ご存知でしたらお知らせください。
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2005-09-29 09:36
以前同様にはまったことがあります
以下リンクどうでしょうか?

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=23854&forum=12

「&」を「&amp;」としても結局先頭の &という文字自体で同様の動きになって
しまいます。
スフレ
ぬし
会議室デビュー日: 2005/05/27
投稿数: 281
お住まい・勤務地: 東京
投稿日時: 2005-09-29 11:15

  • 「hoge&value」などと書くのは、間違いです。必ず「hoge&amp;value」とする必要があります。
  • 連続するテキストに対して characters() が複数回に分けて呼ばれるのは、SAXの仕様です。



[ メッセージ編集済み 編集者: スフレ 編集日時 2005-09-29 12:30 ]
A.K.渡邉
常連さん
会議室デビュー日: 2004/11/15
投稿数: 30
投稿日時: 2005-10-03 14:18
返信有り難うございます。仕様となっている(ランダムではない)ということですので、対応がやりやすくなりました。DOCとリンク先の記事を読んで勉強することにします。ありがとうございました。
1

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