java读写文件

java读写文件1、一次性读取整个文件内容/***一次性读取全部文件数据*@paramstrFile*/publicstaticvoidreadFile(StringstrFile){try{InputStreamis=newFileInputStream(strFile);…

大家好,又见面了,我是你们的朋友全栈君。

1、一次性读取整个文件内容

/** * 一次性读取全部文件数据 * @param strFile */
    public static void readFile(String strFile){ 
   
        try{ 
   
            InputStream is = new FileInputStream(strFile);
            int iAvail = is.available();
            byte[] bytes = new byte[iAvail];
            is.read(bytes);
            logger.info("文件内容:\n" + new String(bytes));
            is.close();
        }catch(Exception e){ 
   
            e.printStackTrace();
        }
    }

2、字符流按行读取文件

/** * 按行读取文件 * @param strFile */
    public static void readFileByLine(String strFile){ 
   
        try { 
   
            File file = new File(strFile);
            BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
            String strLine = null;
            int lineCount = 1;
            while(null != (strLine = bufferedReader.readLine())){ 
   
                logger.info("第[" + lineCount + "]行数据:[" + strLine + "]");
                lineCount++;
            }
        }catch(Exception e){ 
   
            e.printStackTrace();
        }
    }

3、字节流按行读取文件

 /**
     * 按行读取全部文件数据
     *
     * @param strFile
     */
    public static StringBuffer readFile(String strFile) throws IOException { 
   
        StringBuffer strSb = new StringBuffer();
        InputStreamReader inStrR = new InputStreamReader(new FileInputStream(strFile), "UTF-8");
        // character streams
        BufferedReader br = new BufferedReader(inStrR);
        String line = br.readLine();
        while (line != null) { 
   
            strSb.append(line).append("\r\n");
            line = br.readLine();
        }
        return strSb;
    }

4、写文件

  /**
     * 写入文件
     * @param fileName
     * @param s
     * @throws IOException
     */
    public static void writeToFile(String fileName,String s) throws IOException { 
   
        File f1 = new File(fileName);
        OutputStream out = null;
        BufferedWriter bw = null;
        if (f1.exists()) { 
   
            out = new FileOutputStream(f1);
            bw = new BufferedWriter(new OutputStreamWriter(out, "utf-8"));
            bw.write(s);
            bw.flush();
            bw.close();
        } else { 
   
            System.out.println("文件不存在");
        }
    }

5、写文件,追加内容

/**
     * 追加文件
     */
    public static void writeToFileAppend(String fileName, String text) { 
   
        FileWriter fw = null;
        try { 
   
            //如果文件存在,则追加内容;如果文件不存在,则创建文件
            File f = new File(fileName);
            fw = new FileWriter(f, true);
        } catch (IOException e) { 
   
            e.printStackTrace();
        }
        PrintWriter pw = new PrintWriter(fw);
        pw.println(text);
        pw.flush();
        try { 
   
            fw.flush();
            pw.close();
            fw.close();
        } catch (IOException e) { 
   
            e.printStackTrace();
        }
    }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150422.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Nginx-使用以及几种负载均衡算法

    Nginx-使用以及几种负载均衡算法文章目录Nginx(enginex)Nginx能做什么?1.正向代理2.反向代理3.HTTP服务器(动静分离等)4.负载均衡负载均衡模块-upstreamupstream负载均衡算法:轮询(roundrobin)加权轮询(WeightedRoundRobin)IP_Hashfair(第三方)url_hash(第三方)Nginx配置文件Nginxlocation匹配规则Nginx(enginex)是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3

  • 实验室设备管理系统C语言——课程设计实习「建议收藏」

    实验室设备管理系统C语言——课程设计实习「建议收藏」本题目将建立一个实验室设备管理系统,记录实验室所有的实验设备,并及时反响设备的运转状况,使用情况,设备购进以后及时记录设备相关信息,对彻底损坏的设备进行报废,维修的设备信息及有更改信息的设备进行统计,解决人工管理系统没解决的问题以及实现对用户更方便的功能,对由严重问题故障的要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等新设备购入后要立即进行设备登记,包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家保质期和经办人等信息。随时对现有设备及其修理、报废情况进行统计。

    2022年10月13日
  • python读取excel单元格内容_python如何读取txt文件

    python读取excel单元格内容_python如何读取txt文件今天,跟大家谈一下用python计算Excel中的数据我们先学习读取Excel中的数据首先我们要安装xlrd库,在命令提示符(快捷键win+r)中输入:pipinstallxlrd下载完成xlrd库。首先呢,当然要先有一个Excel啦,如下:我们先仔细观察这个Excel,里面有2018、2017、2016的月收入来来来,跟着小哥哥一起月入3w!1、利用python读取Excel内容xrld库中的open_workbook函数可以打开Excel文件,并且返回一个代表打开Excel文

  • mysql 2059,1396,1130错误处理 Navicat远程连接数据库方式。

    mysql 2059,1396,1130错误处理 Navicat远程连接数据库方式。

  • 5分钟入门Cinemachine智能相机系统

    5分钟入门Cinemachine智能相机系统摘要:相机是Unity世界的眼睛,一个智能相机更是能帮咱们节省大把的时间和精力。Cinemachine现在已经大量应用到各种项目中,如果你还没有用过Cinemachine,墙裂建议你来体验一下。你好,我是跟着大智学Unity的萌新,我叫小新,这是我本周的学习总结报告哦。Cinemachine入门Cinemachine入门还是很容易的,5分钟足矣,但是深入去研究里面也有很多门道。安装C…

  • origin画图记录[通俗易懂]

    origin画图记录[通俗易懂]origin画图记录折线图折线图origin存放数据的Book其实和excel的sheet很相似,画图的操作也有一定的相似性,只是origin比excel的功能更加强大。首先打开安装好的origin软件,其界面如下图所示:画线状图时,直接选中需要画图的数据,然后选择plot—Line—Line,即可画出对应的折线图,但是此时画出的折线图巨丑,重点时后续对它的美化。对绘制图形的美化以及一些常用功能:这个手掌的图形主要是用于移动、缩放图形中白色画板,效果如下:对坐标轴(刻度、

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号