如何从bufferreader reader.readline() 获取特定编码的字符串

关键是在imputstreamreader 的设定的时候选定编码格式。就能获得该编码格式的字符串
InputStreamReader isr = new InputStreamReader(new FileInputStream(file), “UTF-8”);
BufferedReader read = new BufferedReader(isr);

因为InputStreamReader和BufferedReader都继承自Reader,而BufferedReader的构造器又是Reader.

    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
        System.out.println("start");
        Process p =null;
        String command = "cmd /c copy c:\\test\\tt.jpg c:\\";
        p=Runtime.getRuntime().exec(command);
          BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream(),"gbk"));
          String line;
          while((line = reader.readLine())!= null){
              System.out.println(line);
          }
        System.out.println("end");

    }
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: `reader.readline()` 是一个方法调用,常见于 Java 语言中读取文件的操作中。其中 `reader` 是一个 `java.io.BufferedReader` 类型的对象,它负责读取文本文件中的数据。`readline()` 方法会从输入流中读取一行数据,直到读取到行末或者文件结束,然后将读取到的数据存储到一个字符串对象中并返回。如果读取过程中出现异常,会抛出 `IOException` 异常。`readline()` 方法返回的字符串不包括行终止符(例如换行符 "\n")。 需要注意的是,`readline()` 方法只能读取文本文件中的数据,而不能读取二进制文件中的数据。如果需要读取二进制文件,可以使用 `java.io.FileInputStream` 类中的 `read()` 方法。 ### 回答2: reader.readline是一个用于读取文本文件的方法。它的作用是从文本文件中逐行读取数据,并将每一行的内容作为一个字符串返回。读取文件时,首先会从文件的第一行开始读取,然后通过调用reader.readline()方法可以逐行顺序读取文件中的所有行,直到读取到文件的末尾。 当调用reader.readline()方法时,它会读取一行数据,包括行末尾的换行符,并将该行内容作为一个字符串返回。下次再次调用reader.readline()方法时,它将会读取文件中的下一行数据,并返回该行内容的字符串。这个过程会一直重复,直到读取到文件的末尾,即返回一个空字符串。 使用reader.readline()方法可以方便地按行读取大型文本文件的内容,对于需要逐行处理文本数据的任务十分有用。例如,在数据处理、文本分析等领域,可以利用reader.readline()方法逐行读取文本文件的内容,并对每一行进行相应的处理和分析。 需要注意的是,调用reader.readline()方法时要保证文件已经以读模式打开,并且需要逐行读取的文件要确保是文本文件,而不是二进制文件。此外,在读取所有行之后,需要关闭文件以释放资源,避免占用过多的内存。 ### 回答3: reader.readline是一个用于读取文本文件的函数。它可以一次读取文件的一行文本。 在使用reader.readline时,它会从当前位置开始读取文件中的文本,直到遇到换行符(\n)。然后它将返回所读取的那一行文本,包括换行符在内。如果没有读取到任何内容,则返回一个空字符串reader.readline函数的作用是方便逐行读取文件中的内容。可以通过多次调用这个函数来逐行读取整个文件,进行后续的处理或分析。在处理大型文本文件时,reader.readline是很有用的工具,可以逐行读取文件而不必一次性将整个文件加载到内存中。 例如,我们可以使用以下代码来读取一个文件并打印出其中的每一行文本: ``` with open('example.txt', 'r') as reader: line = reader.readline() while line != '': print(line) line = reader.readline() ``` 这段代码将打开名为`example.txt`的文件,并逐行读取其中的文本。然后使用`print()`函数将每一行文本输出到控制台。当读取到文件的结尾时,reader.readline会返回一个空字符串,即代表文件读取结束。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值