Jeg prøver at skrive en klasse der kan læse fra en xml-fil og formatere det, så jeg kan sende det videre til en webservice som en string.
Nedenfor er mit forsøg indtil videre. Der skal også implementeres en funktion der tæller antal tegn i body på XML'en og der skal laves noget logik der indsætter \ foran alle double-quotes, men i første omgang har jeg blot brug for at få hul igennem.
Jeg har valgt at implementere det med en løkke der læser én linie ad gangen, gemmer den i en variabel som processeres (indtil videre indsættes der kun linebreaks). Derefter gemmes hver linie i en arrayliste og når xml-filen er slut skulle løkken gerne breake og listen skrives til en string.
Mit forsøg på at implementere det kan ses nedenfor:
import java.io.*;
import java.util.*;
public class RequestBuilder {
private String _filename, output;
//Constructor method
RequestBuilder(String filename){
String line;
_filename = filename;
//Sets up a array to store each line of XML read from a file
ArrayList<String> lineList;
lineList = new ArrayList<String>();
try {
//Sets up a filereader and a buffer
FileReader fr = new FileReader(_filename);
BufferedReader br = new BufferedReader(fr);
//Iterates through each element of the arraylist until empty
for (String o : lineList){
//Stores a single linein a variable and appends a line-break
line = br.readLine() + "\n";
//Addseach line to the arraylist
lineList.add(line);
}
//Closes the filereader
fr.close();
//Writes the arraylist to a string
output = lineList.toString();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public String getRequest(){
return output;
}
}