Re: read/write in the same xml file
yes,i'm literally trying to overwrite the file "compte.xml" at the same time as i 'm reading it in. my command line is: java org.apache.xalan.xslt.Process -IN catalogue.xml -XSL compte.xsl -OUT compte.txt -TEXT -PARAM file_cnf compte.xml for me in this stylesheet the input file and output file aren't as important as the extern file compte.xml thanks Lars Huttar a écrit : > > I try to read from the xml file "compte.xml" > > and to write in the same xml file,but i find that the xml file wasn't > > modifided. > > I'm not familiar with the <redirect:write> element, which seems > to be an extension. The only idea I would offer is this... > Are you literally trying to overwrite the file "compte.xml" at > the same time as you are reading it in? > That seems like a bad idea. And if you are, maybe your > operating system is (sensibly) locking "compte.xml" from being > overwritten while it is open for reading. > > If you make your output filename different from your input > filename, then does it work? > > If that doesn't answer your question, please show us your > command line... you are apparently using <redirect:write> > to send output to a file, but where is the primary output > going? Namely, where is the last > <xsl:value-of select="$vcompte + 100"/> > (outside the redirect:write) going? > > Also, what XSLT processor and what extension set are you using? > > Lars > > > this is my xml file: > > > > <document> > > <compte>25</compte> > > </document> > > > > > > > > this is my xsl file: > > > > <?xml version="1.0" encoding="ISO-8859-1"?> > > <xsl:stylesheet version="1.0" > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > > xmlns:lxslt="http://xml.apache.org/xslt" > > xmlns:redirect="org.apache.xalan.xslt.extensions.Redirect" > > extension-element-prefixes ="redirect"> > > <xsl:output method="text" version="1.0" encoding="ISO-8859-1" > > indent="yes" omit-xml-declaration="yes" /> > > <xsl:param name="file_cnf" select="'compte.xml'"/> > > > > > > <xsl:template match="/"> > > > > <xsl:variable name="refdoc" select="document($file_cnf)"/> > > > > <xsl:variable name="vcompte"> > > <xsl:value-of select="$refdoc/document/compte"/> > > </xsl:variable> > > > > <redirect:write file="$file_cnf" method="text"> > > <document> > > <compte> > > <xsl:value-of select="$vcompte + 100"/> > > </compte> > > </document> > > </redirect:write> > > > > <xsl:value-of select="$vcompte + 100"/> > > </xsl:template> > > </xsl:stylesheet> > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format