Cet exemple montre comment récupérer le contenu d'un fichier (membre d'un fichier ou fichier séquentiel) sur le système de fichiers MVS.
Pour récupérer le contenu de la ressource, vérifiez que cette dernière est sélectionnée dans le navigateur, puis choisissez l'action Exemples d'API > Obtenir le contenu du fichier.

Le contenu du fichier s'affiche dans la sortie standard associée au plan de travail. Vous pouvez la trouver dans la fenêtre DOS à partir de laquelle a été lancé le plan de travail ou dans la vue Console du plan de travail d'hébergement dans le cas du plan de travail d'exécution.

Vous pouvez trouver le code source complet dans GetContentsAction.java.
Le fragment de code suivant provenant de la méthode run de la classe GetContentsAction montre comment obtenir le contenu d'un fichier MVS (membre PDS ou fichier séquentiel). Le code est différent pour un fichierIPhysicalFile ou ILogicalFile, mais le flux global reste identique pour les deux. Le code permet d'abord d'appeler la méthode getContents pour obtenir un InputStream. Dès que vous avez récupéré un flux InputStream, vous pouvez appeler les méthodes Java™ standard comme read pour récupérer le contenu du fichier.
InputStream is = null;
if (selectedItem instanceof ILogicalFile) {
// Project proxy for resource
ILogicalFile file = (ILogicalFile) selectedItem;
filename = file.getName();
is = file.getContents();
} else if (selectedItem instanceof IPhysicalFile) {
// Physical Resource
IPhysicalFile file = (IPhysicalFile) selectedItem;
filename = file.getName();
is = file.getContents();
}
int ch = is.read();
while (ch != -1) {
System.out.write(ch);
ch = is.read();
}
Cet exemple explique également comment réagir devant des événements de changement de sélection dans Eclipse. La classe GetContentsAction implémente l'interface ISelectionListener. L'implémentation de sa méthode selectionChanged réagit face aux événements faisant référence à une sélection IStructuredSelection, causée généralement par une modification de la sélection courante dans un navigateur. Le code de l'exemple lance une itération dans les éléments de la sélection courante à l'aide d'un itérateur associé, en ajoutant chaque élément dans une liste.
public void selectionChanged(IAction action, ISelection selection) {
fTargetList = null;
if (selection instanceof IStructuredSelection) {
fTargetList = new ArrayList();
IStructuredSelection selections = (IStructuredSelection)
selection;
for (Iterator e = selections.iterator(); e.hasNext();) {
Object next = e.next();
fTargetList.add(next);
}
}
}