ocp 2


Kartei Details

Karten 141
Sprache Deutsch
Kategorie Informatik
Stufe Andere
Erstellt / Aktualisiert 22.09.2020 / 06.12.2020
Weblink
https://card2brain.ch/box/20200922_java_2_2
Einbinden
<iframe src="https://card2brain.ch/box/20200922_java_2_2/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Wie kann man aus einem Path object ein File-objekt machen?

path.toFile(),

Muss die File existieren wenn man das parent/root directory eines Pathobjects auslesen möchte?

Nein

Kann man alle Funktionen der Path-Klasse nutzen ohne dass die File existiert?

Nein, Path.toRealPath() bspw nicht

Was macht der optionale Parameter und für was wird er genutzt? NOFOLLOW_LINKS

Symbolische links werden nicht traversed

-> test file existing, read file data, copy file, move file

Was macht der optionale Parameter und für was wird er genutzt? FOLLOW_LINKS

symbolische links werden traversed

-> traverse a directory-tree

Was macht der optionale Parameter und für was wird er genutzt? COPY_ATTRIBUTES

alle metadaten über eine file werden mitkopiert

-> copy file

Was macht der optionale Parameter und für was wird er genutzt? REPLACE_EXISTING

wenn targetfile existiert wird sie reülaced (ohne den parameter wird eine exception geworfen wenn die file schon existiert)

-> copy file, move file

Was macht der optionale Parameter und für was wird er genutzt? ATOMIC_MOVE

operation wird atomic ausgeführt, stellt sicher dass jeder prozess nur einen kompletten record sieht. Wenn das feature nicht supported ist im filesystem wird ggfs. eine exception geworfen

-> move file

Was gibt es für Methoden bei Path um basic informations über die Pfad-repräsentation zu bekommen?

* toString() : string repräsentation des gesamten Pfads

* getNameCount(): liste von namen im Pfad (happy/hippo/.. )

* getName(int) meist mit der methode oben verwendet, index ist index im pfad 

Wie ist getName(int) indexed? was passiert mit dem root-element?

zero-index, file-system-root ist excluded

Wie erhält man den Filename eines PAth-objects? was ist besonders

getFileName() -> returned neue Pathinstanz mit dem filename

Wie erhält man den parent eines Paths? was ist besonders

getParent() returned null wenn kein parentpath, Wenn der Path relative ist hört die methode im top-lvl des paths auf, geht nicht zum filesystemroot

Wie erhält man den Root eines path-ojbjects? was ist besonders?

getRoot(), wenn relative dann null.

Wie kann man bei einem Pathobject checken ob es absolute ist=

isAbsolute()

Wie bekommt man ein abdsolutes Pathobject aus einem relativen Pathobject?

toAbsolutePath(), wenn schon absolute bekommt man eine kopie zurück

Wie kann man einen relativen "teil"-Path von einem anderen Path erstellen?

subpath(inclusiveInt, exclusiveInt)

Wie kann man zwei Paths relativ zueinander machen? (schauen wie man vom einen objekt zum anderen kommen würde)

mit relativize(Path)

Wie kann man zwei Path-objecte zusammenkleben?

mit resolve(Path)

Worauf muss man bei Path.resolve und relativize achten?

Pfade werden nicht normalisisiert (.. und co im pfad). -> Danach normalize() aufrufen

Was wäre hier die Ausaabe?

final Path path1 = Paths.get("/turkey/food");
final Path path2 = Paths.get("/tiger/cage");
System.out.println(path1.resolve(path2));

/tiger/cage

Checkt normalize() ob die FIle wirklich existiert?

nein

Was ist eine Alternative zu toAbsolutePath? Was sind die Besonderheiten?

toRealPath(Path) -> verified dass der Path wirklich existiert (sonst IOException), supported NOFOLLOW_LINKS, ruft implizid normalice() auf

Wie kann man herausfinden ob eine File existiert?

Files.exists(Path)

Wie kann man checken ob zwei Paths auf die selbe File verweisen? Wie funktioniert der check?

Files.isSameFile(Path, Path) -> checkt mit equals ob gleich, wenn nicht werden pfade aufgelöst ud dann gecheckt ob die files gleich sind. wenn die file nicht existiert: IOException

Wie kann man Directories erstellen?

Files.createDirectory(Path), bzw. Files.createDirectories(Pasth) -> erstellt directories im pfad bis nach oben

Was passiert bei createDirectory() wenn parent directories nicht existieren?

IOException

Wie kann man FIles/Directories kopieren?

Files.copy(Path,Path)

Sind mit FIles.copy() kopierte directories shallow oder deep copies?

shallow

Was für überladene copy-methoden behinaltet die NIO.2 files API? 

Zwei die mit streams arbeiten können:

* copy(sourceInputStream, targetPathObject)

* copy(sourcePathObject, targetOutputStream)

Wie kann man eine FIle verschieben/umbenennen?

Mit Files.move(path,path)  -> IOException wenn file nicht exestiert

Was ist das Standartverhatlten von Files.move() und wie kann es geändert werden?

folgt links, wirft exception wenn file bereits existiert, kein atomic move
-> NOFOLLOW_LINKS, REPLACE_EXISTING, ATOMIC_MOVE

Wie kann man eine File/directory löschen?

* Files.delete(path)

FIles.deleteIfExists(path)

Was passiert bei Files.delete wenn die file nicht existiert? Was wenn das directory nicht leer ist?

IOException / DirectoryNotEmptyException

Wie kommt man an das default-charset der VM?

Charset.defaultCHarset()

Wie kann man eine File an einem Pfad mit ienem BufferedReader object lesen?

Files.newBufferedReader(Path, Charset)

Wie kann man mit einem BufferedWriter in eine File schreiben?

Files.newBufferedWriter(Path, Charset)

Was passiert bei Files.newBufferedWriter wenn die file bereits existiert?

Sie wird überschrieben

Wie kann man eine textfile lesen und alle lines als geordnete liste mit string-werten erhalten?

Mit Files.readAllLines

Worauf muss man bei Files.readAllLines achten?

Wenn die File zu groß für den speicvher ist kann eine OutOfMemoryError geschmissen werden

Sind File-metadaten OS-abhängig?

ja