pyroben
Grünschnabel
Hallo,
ich habe nun meine rcp-anwendung soweit fertig, dass ich meine erstellten xml files in meinen eigenen workspace speichern kann.
aber wie kann ich die datei beim start wieder laden?
es gibt zwar die getFile(String filename) aber dazu müsst ich wissen wie die datei heisst. Da der Benutzer aber selbst den Dateinamen wählen kann, muss es doch eine Möglichkeit geben, alle IFiles im IFolder bzw IProject abzufragen oder zu laden.
danke für eure Antworten schon mal.
pyro
ich habe nun meine rcp-anwendung soweit fertig, dass ich meine erstellten xml files in meinen eigenen workspace speichern kann.
Code:
public void save() {
DSWriter dsWriter = new DSWriter();
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
IProject project = root.getProject("myProject");
IFile file = project.getFolder("Configurations").getFile(ds.getName() + ".xml");
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
/* write the Configuration to a ByteArrayOutputStream */
try {
dsWriter.write(ds,outputStream);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
InputStream source =
new ByteArrayInputStream(outputStream.toByteArray());
/* create file in workspace, respectively change it's content if already exists */
if (!file.exists()) {
try {
file.create(source, IResource.NONE, null);
} catch (CoreException e) {
System.out.println("creating file failed");
e.printStackTrace();
} // end try-catch
}else {
try {
file.setContents(source, IResource.NONE, null);
} catch (CoreException e) {
System.out.println("changing file content failed");
e.printStackTrace();
}
}//end if
aber wie kann ich die datei beim start wieder laden?
es gibt zwar die getFile(String filename) aber dazu müsst ich wissen wie die datei heisst. Da der Benutzer aber selbst den Dateinamen wählen kann, muss es doch eine Möglichkeit geben, alle IFiles im IFolder bzw IProject abzufragen oder zu laden.
danke für eure Antworten schon mal.
pyro