此代码的 Java 适当 I/O 为空终止字符

标签 java linux file-io io

这段代码在 Java 中的等价物是什么?我放了一部分,我对 I/O 部分感兴趣:

int fd = open(FILE_NAME, O_WRONLY);  
int ret = 0;  
if (fd == -1) {         
    exit(EXIT_FAILURE);  
}  
while (1) {  
    ret = write(fd, "\0", 1);  
}  

更新:
该代码不复制文件。它仅每隔 X 秒在文件中写入一个字节 (?)/char(?)(不确定是什么)

最佳答案

这基本上就是您想要的。

try {
  FileOutputStream os = new FileOutputStream(FILENAME);
  while( true ){
     os.write(0);
     Thread.sleep(2000);  // wait 2 seconds before the next write
  }
}
catch( FileNotFoundException e ){
  System.err.println("watchdog error: " + e.getMessage())
  System.exit(1);
}

如果您真的想像 C 代码那样忽略所有“写入”错误,请将 os.write 更改为:

try {
  os.write(0);
}
catch( Exception we ){
  //ignoring write exception 
}

关于此代码的 Java 适当 I/O 为空终止字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14938568/

相关文章:

java - 编写仅读写一列的文本

c - 如何使用 C 编程读取 Visual Studio Code 中的输入文件?

java - jProfiler 不提供方法级别的统计信息

c - 如何在 Linux 中使用麦克风获取原始格式的语音

java - 如何在 Netbeans 中使用 Eclipse-Link JPA 应用静态编织 Ant 任务?

linux - 特殊的 cronjob 调度

linux - Linux 中 MEX 文件的独立程序

c++ - 清理此代码 [文件输入]

Java:方法链和依赖注入(inject)

java - 如何在编码/解码期间忽略基类?