java - 使用InputStream读取文件

标签 java inputstream

所以我有一个包含一行 int 的文件:5551212

我正在尝试使用InputStream读取此文件,然后看看是否可以提取其中写入的数字

我执行了以下步骤:

import java.io.*;

class Shuffle {


    public static void main(String args[]) throws IOException {
        FileInputStream newfile = new FileInputStream("file path");
        System.out.println(newfile.getChannel());
        System.out.println(newfile.getFD()); 
        System.out.println("Number of remaining bytes:"+newfile.available());
        int data;
        while ((data = newfile.read()) != -1) {
            System.out.print(data + " ");   
        }
        newfile.close();
    }  
}

但是,我得到的输出是:53, 53, 53, 49, 50, 49, 50

我不太确定这应该代表什么,或者只是如何在整数上使用 InputStream

最佳答案

使用 Java 11 或更高版本,可以使用一行代码读取文件 - Files.readString

这是读取文本文件的工作示例:

// File name:  ReadFile.java

import java.nio.file.*;

public class ReadFile {

    public static void main(String[] args) throws Exception {
        String path = "my-file.txt";
        // Read file content as a string
        System.out.println(Files.readString(Paths.get(path)));
    }
}

输出:

> javac ReadFile.java

> java ReadFile
   5551212

关于java - 使用InputStream读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61312693/

相关文章:

java - 如何使服务器能够接受来自具有不同套接字连接的客户端的多个输入流?

java - TCP 套接字上的多个图像文件

来自文件路径的 Java 输入和输出流

c# - 无法将 HttpPostedFileBase 保存到 session 变量并使用两次

java.lang.NoClassDefFoundError : javassist. util.proxy.Proxy

java - 将JOGL打包成fat JAR

java - 等待异步任务完成

java - 如何将 ArrayUtils 用于对象数组,它不会删除数组的内容

java - 除非转义,否则在字符串中查找简单模式

java - 随机访问 Android Assets