[
Lists Home |
Date Index |
Thread Index
]
Hi Dong, I'm not sure and have no time to test it but looking at:
http://www.saxproject.org/apidoc/org/xml/sax/helpers/AttributesImpl.html
it seems like if you're using a SAX2 parser, you could use the
AttributesImpl class for this.
public void startElement (String uri,
String localName,
String qName,
Attributes atts)
throws SAXException
{
AttributesImpl newAtts = new AttributesImpl(atts);
int linkIndex = newAtts.getIndex("link");
if(localName=="theElement"){
//alter the local name.
localName ="thatElement";
//alter the link attribute
if (linkIndex > 0) {
newAtts.setValue(linkIndex, "there");
}
}
super.startElement(uri, localName, qName, newAtts);
}
I hope this helps.
Let me know how this works.
P@
Dong ST wrote:
> hi,everyone!
>
> I m a newbie of using SAX.I need alter a attribute value use SAX.
> Ex. the xml document frag is below:
>
> .....
> <theElement link ="here"/>
> .....
>
> I want to alter the attribute link's value to "there", How can i do
> this throw SAX Filter.
>
> I know I can alter a element tage used SAX Filter. Like the code below.
> #################################################
> public class XFormFilter extends XMLFilterImpl {
>
> public XFormFilter() {
> }
>
> public XFormFilter(XMLReader parent)
> {
> super(parent);
> }
>
> public void startElement (String uri,
> String localName,
> String qName,
> Attributes atts)
> throws SAXException
> {
> if(localName=="theElement"){
> //alter the local name.
> localName ="thatElement";
> }
> }
>
> super.startElement(uri, localName, qName, atts);
> }
> ################################################################
>
> someone help me, and thanks in advance.
>
>
> Jack
>
>
>
> _________________________________________________________________
> 享用世界上最大的电子邮件系统— MSN Hotmail。 http://www.hotmail.com
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
>
>
>
|