CodeName.txt 文件中是 { “English”:“英国”, ”China“:“中国” }
package com.example.demo.controller; import java.io.*; import java.util.ArrayList; import java.util.List; public class FileTest { public static void main(String[] args) throws IOException { String dirname = "D:/test/CodeToName.txt"; List<Country> countries = new ArrayList<>(); List<String> strings = new ArrayList<>(); //创建一个文件对象 File codeNameFile = new File(dirname); //从硬盘存在的一个文件,读取其内容到程序中,用FileInputStream FileInputStream fileInputStream = new FileInputStream(codeNameFile); //把字节流转换成字符流 InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8"); //将字符流读到缓存中,到缓存满了或者你flush的时候,再读入内存,为了提供读的效率而设计的 BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String s = null; while ((s = bufferedReader.readLine()) != null) {//使用readLine方法,一次读一行 if ("{".equals(s) || "}".equals(s)) { continue; } String s1 = s.replace("\"", ""); String s2 = s1.replace(",", ""); String[] split = s2.split(":"); Country country = new Country(); country.setKeyName(split[0].trim()); country.setName(split[1].trim()); countries.add(country); } System.out.println(countries); } } public class Country { private String keyName; private String name; public String getKeyName() { return keyName; } public void setKeyName(String keyName) { this.keyName = keyName; } public String getName() { return name; } public void setName(String name) { this.name = name; } }