Read and modify XML file with execute script operator

Ale
Ale New Altair Community Member
edited November 5 in Community Q&A
I'm trying to read an xml file without using the ReadXml operator. I want to treat is as a text file and then extract some values from it. I was wondering if this can be done using the execute script operator. This is part of the java code I'm using with the execute script operator. I don't get any error but it's like it doesn't even start the execution.

String path="/home/myFolder/file.xml";
String content = new Scanner(new File(path)).useDelimiter("\\Z").next();
//some operations on content
return content;
Would you suggest a better way to do this?
Thanks a lot.

Answers

  • Marco_Boeck
    Marco_Boeck New Altair Community Member
    Hi,

    this will read a file line by line and create a document. To use the output, you need to create an instance of an IOObject and return that.

    import com.rapidminer.operator.text.Document;
    import com.rapidminer.operator.text.Token;

    import java.util.List;
    import java.util.LinkedList;
    import java.util.Scanner;
    import java.nio.file.Paths;

    String pathToFile = 'C:/users/boeck/Desktop/test.txt';
    Scanner content = new Scanner(Paths.get(pathToFile).toFile());

    List<Token> newTokens = new LinkedList<>();
    while (content.hasNextLine()) {
    newTokens.add(new Token(content.nextLine(), 1.0f));
    }

    return new Document(newTokens);
    Regards,
    Marco
  • Ale
    Ale New Altair Community Member
    Thank you very much. It's very helpful