Java.io.File.sync() 方法
描述
java.io.File.sync() 方法强制所有系统缓冲区与底层设备同步。
声明
以下是 java.io.File.sync() 方法的声明 −
public void sync()
参数
NA
返回值
该方法不返回任何值。
异常
SyncFailedException − 当缓冲区无法刷新或系统无法保证所有缓冲区与物理媒体同步时,将引发此异常。
示例
下面的例子展示了 java.io.File.sync() 方法的使用。
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();
}
}
}
让我们编译并运行上面的程序,这将产生下面的结果 −
ABCDEF Sync() successfully executed!!

