logo

Java FileDescriptor klasa

Klasa java.io.FileDescriptor predstavlja otvorenu datoteku ili ručku utičnice u osnovnom operativnom sustavu. Djeluje kao neprozirna referenca na određeni datotečni uređaj ili utičnicu. Ova se klasa uglavnom koristi kao most između Java I/O tokova i izvornih resursa datotečnog sustava.

pitanja za razgovor na java jeziku

Klasna deklaracija

Java
public final class FileDescriptor extends Object 
  • Glavna praktična upotreba deskriptora datoteke je stvaranje FileInputStream ili FileOutputStream koji će ga sadržavati.
  • Aplikacije ne bi trebale stvarati vlastite deskriptore datoteka.

Uobičajeni FileDescriptor objekti

  • FileDescriptor.in: Predstavlja standardni unos (tipkovnica)
  • FileDescriptor.out: Predstavlja standardni izlaz (konzola)
  • FileDescriptor.err: Predstavlja standardnu ​​pogrešku (izlaz pogreške)

Konstruktor

  • FileDescriptor(): Stvara nevažeći deskriptor datoteke koji nije povezan ni s jednom datotekom ili utičnicom.

Metode

Postoje dvije glavne metode kao što je navedeno u nastavku:

  • void sync(): Prisiljava sve međuspremnike sustava na sinkronizaciju s osnovnim uređajem osiguravajući da su podaci fizički zapisani.
  • java.io.File.valid(): Provjerava je li objekt deskriptora datoteke valjan (tj. povezan s otvorenom datotekom ili utičnicom).

Primjer metode

1. metoda sync().

Sintaksa:



javna void sinkronizacija()

Povratak: poništiti

Iznimka: SyncFailedException - Ovo je izuzetak koji se javlja ako ne postoji jamstvo sinkronizacije međuspremnika s uređajem.

Java
import java.io.*; public class FileDescriptorValidity {  public static void main(String[] args) throws Exception {  FileOutputStream fos = new FileOutputStream('example.txt');  FileDescriptor fd = fos.getFD();  System.out.println('Is FileDescriptor valid? ' + fd.valid());  fos.close();  System.out.println('Is FileDescriptor valid after close? ' + fd.valid());  } } 

Izlaz
Is FileDescriptor valid? true Is FileDescriptor valid after close? false 

2. valid() metoda

Sintaksa:

javni Booleov valid()

Povratak: true ako je FileDescriptor objekt valjan else false

Java
import java.io.*; public class FileDescriptorSync {  public static void main(String[] args) throws Exception {  FileOutputStream fos = new FileOutputStream('syncDemo.txt');  FileDescriptor fd = fos.getFD();  fos.write('GeeksForGeeks FileDescriptor Example'.getBytes());  fd.sync(); // Ensures data is written to disk  System.out.println('Data synchronized successfully.');  fos.close();  } } 

Izlaz
Data synchronized successfully. 

Primjer sa standardnim deskriptorima datoteka

Java
import java.io.*; public class StandardFileDescriptors {  public static void main(String[] args) throws Exception {  FileInputStream fis = new FileInputStream(FileDescriptor.in);  FileOutputStream fos = new FileOutputStream(FileDescriptor.out);  FileOutputStream fes = new FileOutputStream(FileDescriptor.err);  fos.write('Enter something: '.getBytes());  int data = fis.read();  fes.write(('You entered: ' + (char)data + 'n').getBytes());  fis.close();  fos.close();  fes.close();  } } 

Izlaz:

Unesite nešto: A

ups koncept u Javi

Unijeli ste: A

Napravi kviz