java - 读取文件时验证每个读取的字节数组缓冲区

标签 java file io character

我正在尝试使用 FileInputStream 类的已知“读取”方法将文件读取到特定大小(例如 1024)的某个 byte[] 缓冲区中)。填充该缓冲区后,我想验证它的字符(可以说一一对应),但我不想将其转换为字符串(或使用正则表达式),因为我可能会丢失数据。

有人可以建议我进行特定验证的最佳方法是什么吗? 注意:我知道我可以使用 Character.isLetter 和此类方法,但我不确定如何迭代该缓冲区。

最佳答案

我认为这应该涵盖你想做的事情:

byte[] arr = new byte[1024];
int len = System.in.read(arr);
while (len != -1)
{
  for (int i = 0; i < len; i++)
    System.out.println((char)arr[i] + " - " + Character.isLetter((char)arr[i]));
  len = System.in.read(arr);
}

关于java - 读取文件时验证每个读取的字节数组缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15131188/

相关文章:

C++读取大量文件的一小部分

tomcat - 当 Tomcat(嵌入式)服务器变慢并最终变得无响应时,最常见的原因是什么

linux - 为不同的 block 设备使用不同的 Linux I/O 调度器

c - 在C程序中获取系统命令输出

java - 如何在 Java 中将数组列表从一个类复制到另一个类?

java - 为什么使用 Intent 后会出现此错误?

java - Try/Catch 内部或外部函数

java - 简单的 GUI 指导。我可以坚持使用 BorderLayout 还是需要其他东西?

java - 使用 Scanner 类写入文本文件

c++ - 将数据写入文件的 'best' 方法是什么,稍后再次读入。