Easy way to remove headers from XML files

I need to remove non-xml tags from a file generated by another program.

The file looks something like this:

Executing Command - Blah.exe ...
-----Command Output-----
HTTP/1.1 200 OK
Connection: close
Content-Type: text/xml

<?xml version="1.0"?>
<testResults>
  <finalCounts>
    <right>7</right>
    <wrong>4</wrong>
    <ignores>0</ignores>
    <exceptions>0</exceptions>
  </finalCounts>
</testResults>

Exit-Code: 15

How to easily delete text without text in java?

+3
source share
2 answers
// getContent() returns the complete text to strip.
//
String s = getContent();

// Find the start of the XML content using the <?xml prefix.
//
int xmlIndex = s.indexOf( "<?xml" );

// Strip the non-XML header.
//
s = s.substring( xmlIndex );

// Find the last closing angle-bracket; should indicate end of the XML.
//
xmlIndex = s.lastIndexOf( ">" );

// Strip everything after the closing angle-bracket.
//
s = s.substring( 0, xmlIndex );
+8
source

It looks like direct HTTP output ... so just scanning the first two consecutive lines (perhaps with a carriage return in front of them) will give you the end of the prefix you want to filter out.

+4
source

Source: https://habr.com/ru/post/1742000/


All Articles