转换流(InputStreamReader)

package inputDemo;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
/**
 * InputStreamRead是一个读入器,同时也是一个 转换流;
 * InputStreamRead类将含有字节的流转换为Unicode编码的字符流;
 * 
 * @author king_wang
 *
 */
public class InputStreamReadDemo {
   public static void main(String[] args) throws IOException{

      InputStreamReader in=new InputStreamReader(
              new FileInputStream("E:\\file.txt")); 

        int c = -1;
        while((c = in.read()) != -1){
            System.out.print((char)c);
        }
        in.close();

   }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会为你创建一个自定义类WorldCup,并将内容从message.txt读取到ArrayList<WorldCup>列表中。以下是代码实现: ```java import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; class WorldCup { private int year; private String hostCountry; private String winnerCountry; public WorldCup(int year, String hostCountry, String winnerCountry) { this.year = year; this.hostCountry = hostCountry; this.winnerCountry = winnerCountry; } public int getYear() { return year; } public String getHostCountry() { return hostCountry; } public String getWinnerCountry() { return winnerCountry; } } public class Main { public static void main(String[] args) { ArrayList<WorldCup> list = new ArrayList<>(); try { InputStream inputStream = new FileInputStream("message.txt"); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String line; while ((line = bufferedReader.readLine()) != null) { String[] data = line.split(","); int year = Integer.parseInt(data[0]); String hostCountry = data[1]; String winnerCountry = data[2]; WorldCup worldCup = new WorldCup(year, hostCountry, winnerCountry); list.add(worldCup); } bufferedReader.close(); inputStreamReader.close(); inputStream.close(); } catch (IOException e) { e.printStackTrace(); } // 打印列表中的世界杯信息 for (WorldCup worldCup : list) { System.out.println("年份:" + worldCup.getYear()); System.out.println("举办国:" + worldCup.getHostCountry()); System.out.println("胜利国:" + worldCup.getWinnerCountry()); System.out.println(); } } } ``` 请确保在运行代码之前,将`message.txt`文件放在与Java文件相同的目录下,并且文件内容与你提供的一致。代码将会读取文件内容,并将每一行解析为一个WorldCup对象,然后将其添加到ArrayList列表中。最后,代码会遍历列表并打印出每个世界杯的信息。 希望对你有帮助!如果有任何疑问,请随时问我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值