java - एक्सएमएल हेडर से बचने के लिए कैसे करें, जबकि एंटी स्क्रिप्ट में एक्सएमएल फाइलें एकत्रित करें




xml ant (2)

एक फिल्टर श्रृंखला है। इसलिए आप फ़िल्टर करने के लिए 'एक्सएमएल संस्करण' या 'एन्कोडिंग' का उपयोग कर सकते हैं।

<filterchain>
         <linecontains>
          <contains value="xml version"/>
         </linecontains>
      </filterchain>

तो फिर एक हैडर जो आम के रूप में जोड़ा जा सकता है। वहां आप सामान्य हेडर दे सकते हैं।

<header filtering="no" trimleading="yes">
      ----Put  Header---
</header>

फ़ंक्शन रिफ: https://googleweblight.com/?lite_url=https://ant.apache.org/manual/Tasks/concat.html&ei=t1jfBWPU&lc=en-IN&s=1&m=717&host=www.google.co.in&ts= 1456774849 और sig = ALL1Aj6a3WOuua261FfWU1a1B-ULkTgOMw

इस सवाल का पहले से ही उत्तर दिया गया है:

मैं सभी XML फाइलों को एक फ़ोल्डर में एंटी स्क्रिप्ट में एक एकल एक्सएमएल फ़ाइल में जोड़ रहा हूँ। जबकि XML फ़ाइलों को जोड़ना, शीर्ष लेख

 <?xml version="1.0" encoding="UTF-8" ?> 

सभी XML फ़ाइलों में आउटपुट xmlfile में संलग्न हो रहे हैं

क्या इस शीर्षक से बचने का कोई तरीका है?

  <concat destfile="${docbook.dir}/all-sections.xml"
      force="no">       
   <fileset dir="${docbook.dir}"
     includes="sections/*.xml"/>
   </concat>

शीर्ष लेख को छोड़ने के लिए आप एक regex लागू कर सकते हैं:

<concat destfile="${docbook.dir}/all-sections.xml" force="no">       
    <fileset dir="${docbook.dir}" includes="sections/*.xml"/>
    <filterchain>
        <linecontainsregexp negate="true">
            <regexp pattern="&lt;\?xml version"/>
        </linecontainsregexp>
    </filterchain>  
 </concat>

https://ant.apache.org/manual/Types/filterchain.html

संपादित करें: यदि आप शीर्ष लेख की पहली घटना को रखना चाहते हैं तो यह एक विकल्प है:

<property name="first" value="true"/>

<concat destfile="${docbook.dir}/all-sections.xml">       
    <fileset dir="${docbook.dir}" includes="sections/*.xml"/>
    <filterchain>
        <scriptfilter language="javascript">
        <![CDATA[
            first = project.getProperty("first");
            if(self.getToken().indexOf("<\?xml version") != -1) {
                if(first == "true") {
                    project.setProperty("first", "false");
                } else {
                    self.setToken(null);
                }
            }
        ]]> 
        </scriptfilter>             
    </filterchain>
</concat>




xml-parsing