Java.io.File.sync() Method
Advertisements
Description
The java.io.File.sync() method forces all system buffers to synchronize with the underlying device.
Declaration
Following is the declaration for java.io.File.sync() method:
public void sync()
Parameters
NA
Return Value
The method does not return any value.
Exception
SyncFailedException -- This exception is thrown when the buffer cannot be flushed or because the system cannot guarantee synchronization of all the buffers with the physical media.
Example
The following example shows the usage of java.io.File.sync() method.
package com.tutorialspoint;
import java.io.FileDescriptor;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class FileDemo {
public static void main(String[] args) {
FileInputStream fis = null;
FileOutputStream fos = null;
FileDescriptor fd = null;
byte[] b = {65,66,67,68,69,70};
try{
fos = new FileOutputStream("c:/java test.txt");
fd = fos.getFD();
// writes byte to file output stream
fos.write(b);
// flush data from the stream into the buffer
fos.flush();
// confirms data to be written to the disk
fd.sync();
// create input stream
fis = new FileInputStream("c:/java test.txt");
int value = 0;
// for every available bytes
while((value=fis.read())!= -1)
{
// converts bytes to char
char c = (char)value;
// prints char
System.out.print(c);
}
// print
System.out.print("\nSync() successfully executed!!");
}catch(Exception e){
// if any error occurs
e.printStackTrace();
}finally{
// releases system resources
if(fos!=null)
fos.close();
if(fis!=null)
fis.close();
}
}
}
Let us compile and run the above program, this will produce the following result:
ABCDEF Sync() successfully executed!!