如何在dart中检测文件是否为二进制(非文本)?

如何在dart中检测文件是否为二进制(非文本)?,dart,binaryfiles,Dart,Binaryfiles,在dart控制台应用程序中,如何判断文件是否为二进制(非文本)?读取文件内容并检查是否找到不可显示的字符。例如,\u0000或连续的\u0000,通常出现在二进制文件中,但不出现在文本文件中 另请参见,我使用此代码定义二进制文件或文本文件: bool isBinary(String path) { final file = File(path); RandomAccessFile raf = file.openSync(mode: FileMode.read); Uint8List

在dart控制台应用程序中,如何判断文件是否为二进制(非文本)?

读取文件内容并检查是否找到不可显示的字符。例如,
\u0000
或连续的
\u0000
,通常出现在二进制文件中,但不出现在文本文件中


另请参见,

我使用此代码定义二进制文件或文本文件:

bool isBinary(String path) {
  final file = File(path);
  RandomAccessFile raf = file.openSync(mode: FileMode.read);
  Uint8List data = raf.readSync(124);
  for (final b in data) {
    if (b >= 0x00 && b <= 0x08) {
      raf.close();
      return true;
    }
  }
  raf.close();
  return false;
}

try {
  isBinary('/filepath.ext');
} on FileSystemException {}
bool-isBinary(字符串路径){
最终文件=文件(路径);
RandomAccessFile raf=file.openSync(模式:FileMode.read);
Uint8List data=raf.readSync(124);
对于(数据中的最终b){
如果(b>=0x00&&b