IO流一行一行读取TXT文件

我们在开发或者测试的时候,往往会用到读取本地txt文件内容来处理数据的情况。下面是读取本地txt文件内容,是一行一行读取。如下列txt例子

小明 20

小红 20

小亮 20

下面是代码:

public void test1(){
            try {
                    String encoding="utf-8";//GBK
                    String filePath="/demo/RegionList_zh_CN.txt";//要读取的文件路径
                    
                    File file=new File(filePath);
                    if(file.isFile() && file.exists()){ //判断文件是否存在
                        InputStreamReader read = new InputStreamReader(new FileInputStream(file),encoding);//考虑到编码格式
                        BufferedReader bufferedReader = new BufferedReader(read);
                        String lineTxt = null;//每一行的文本内容
                        String cityId="";
                        String cityName_zhcn="";//中文名称
                        String cityNameLong_zhcn="";//中文名称,长名
                        
                        int i=0;
                        while((lineTxt = bufferedReader.readLine()) != null){
                            
                            try {
                                String[] str=lineTxt.split("\|");
                                
                                if(str.length>=1){
                                    cityId=str[0];
                                }else{
                                    cityId="";
                                }
                                
                                if(str.length>=2){
                                    
                                }else{
                                    
                                }
                                
                                if(str.length>=3){
                                    cityName_zhcn=str[2];
                                }else{
                                    cityName_zhcn="";
                                }
                                
                                if(str.length>=4){
                                    cityNameLong_zhcn=str[3];
                                }else{
                                    cityNameLong_zhcn="";
                                }
                                
                                
                                System.out.println("正在插入第"+i+"条数据......."+lineTxt);
                                String sql="insert into z_sysCity_zhcn values (?,?,?)";
                                jdbcTemplateService.update(sql, new Object[]{cityId,cityName_zhcn,cityNameLong_zhcn});
                                
                                i++;
                            } catch (Exception e) {
                                // TODO: handle exception
                            }
                        }
                        read.close();
            }else{
                System.out.println("找不到指定的文件");
            }
            } catch (Exception e) {
                System.out.println("读取文件内容出错");
                e.printStackTrace();
            }
         
        }
原文地址:https://www.cnblogs.com/dongzhongwei/p/5964772.html