IO流一行一行读取TXT文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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();
            }
         
        }

 

以上是关于IO流一行一行读取TXT文件的主要内容,如果未能解决你的问题,请参考以下文章

JAVA用IO流解析TXT文件,并且将数据写入实体类中!

Java 如何使用输入流和输出流 将txt文件中的某一行数据删除?

java io读取文件时 数据中有连续多个空格怎么处理

lua 怎么读取txt文件最后一行内容?

使用java的输入输出流将一个文本文件的内容按行读取,每读一行就顺序添加行号,并写入到另一个文件中

js怎么实现io流写入txt文档?