Java io流文件读取和写入

Java io流文件读取和写入Javaio流操作demo类1.读取操作/***@authorlxw*@date2020/6/24*@desc获取文件输入流,这里读入内存中*@param[fileName]*@returnbyte[]**/publicbyte[]readPdfFile(StringfileName)throwsException{InputStreamin=null;

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

Java io 流操作demo类

1.读取操作

 /**
     *@author lxw
     *@date 2020/6/24
     *@desc 获取文件输入流,这里读入内存中
     *@param [fileName]
     *@return byte[]
    **/
    public byte[] readPdfFile(String fileName) throws Exception{
        InputStream in = null;
        byte[] bytesRel;
        try {
            //读取Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH路径下文件名位fileName的文件
            File f = new File(Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH+fileName);
            in = new FileInputStream(f);
            //in.available 只适合于读取本地文件时判断流中字节数,不适合网络中的流数据大小判定
            bytesRel = new byte[ in.available()];
            in.read(bytesRel);
        } catch (IOException e) {
          log.error("读取文件{}失败!"+Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH+fileName);
          throw new BizException(IfspRespCode.RESP_ERROR,"读取pdf文件失败!");
        }finally {
            if (in != null){
                try {
                    in.close();
                } catch (IOException e) {
                    log.error("输入流关闭失败!原因:{}",e.getMessage());
                }
            }
        }
        return  bytesRel;
    }

2.写文件

 /**
     *@author lxw
     *@date 2020/6/24
     *@desc 写文件 如果想提高效率,可以使用缓冲流
     *@param [pdfByte, fileName]
     *@return void
    **/
    public void writePdfFile(byte[] pdfByte,String fileName) throws Exception{
        //检查文件是否已经存在,存在删除
        checkFIleExit(fileName,Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH);
        OutputStream os = null;
        try {
            os = new FileOutputStream(Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH+fileName);
            os.write( pdfByte ) ;
            os.flush() ;
        } catch (IOException e) {
            log.error("写入文件{}失败!"+Constants.PDF_CREATE_AND_SIGN.PDF_FILE_PATH+fileName);
        }finally {
            try {
                if (os!=null)  os.close();
            } catch (IOException e) {
                log.error("输入流关闭失败!原因:{}",e.getMessage());
            }
        }
    }


 /**
     *@author lxw
     *@date 2020/6/23
     *@desc 检查文件是否存在,存在就删除掉
     *@param [fileName, path]
     *@return void
    **/
    public void checkFIleExit(String fileName,String path){
        log.info("checkFIleExit方法入参:fileName:{},path:{}",fileName,path);
        File file = new File(path+fileName);
        if (file.exists()){
            file.delete();
        }
    }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

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

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

(0)


相关推荐

  • 2020年读书随笔一篇_2020年教师读书笔记

    2020年读书随笔一篇_2020年教师读书笔记Note:以下markdown格式文本由json2md自动转换生成,可参考JSON转Markdown:我把阅读数据从MongoDB中导出转换为.md了了解具体的转换过程。面纱作者:毛姆[英]ISBN:9787210082835出版社:江西人民出版社出版日期:2016-04-01图书标签:毛姆,小说,英国文学,英国,外国文学豆瓣地址:https://book.douban.com/subject/26757680/阅读日期:2020-01-19读书笔记威廉·萨默塞特·毛姆(

  • 无向图同构 (哈希)「建议收藏」

    题目ProblemDescription如果一个无向图重标号后与另一个无向图完全一致(即对于任意两点,他们之间的边在两个图中都存在或都不存在),则称两个无向图同构。给定两个n个点m条边的无向图,判定两个无向图是否同构。Input第一行一个数T,表示有T组数据(T<=20)对于每一组数据:

  • 使用torchvision时报错:ModuleNotFoundError: No module named ‘six‘

    使用torchvision时报错:ModuleNotFoundError: No module named ‘six‘AnacondaPowershellPrompt中直接输入pipinstallsix

  • oracle存储过程相关整理

    oracle存储过程相关整理存储过程:存储过程是 SQL, PL/SQL, Java 语句的组合, 它使你能将执行商业规则的代码从你的应用程序中移动到数据库。这样的结果就是,代

  • 窗宽窗位

    窗宽窗位转自“CT诊断学”中的窗宽窗位部分。窗宽与窗位CT能识别人体内2000个不同灰阶的密度差别。而人的眼睛却只能分辨16个灰阶度。因此,人眼在CT图像上能分辨的CT值应为125Hu(2000/16)。换句话说,人体内不同组织CT值只有相差125Hu以上,才能为人眼所识别。人体软组织CT值多变化在20-50Hu之间,人眼就无法识别。为此,必须进行分段观察,才能使

  • CTF-UPX脱壳加壳讲解;(详细版)

    CTF-UPX脱壳加壳讲解;(详细版)在做CTF-RE题的时候,下载的题目附件会发现缺少函数方法的现象,说明这个文件就被加壳处理了;这个是加壳状态下的;脱壳后~~~~~~~如何发现是加壳的呢?除了开头所描述的方法,还有第二种用ExeinfoPE软件查看附件信息;此时这个软件就提示我们这个附件是UPX加壳处理的;二.脱壳这里我只讲一种方法(因为我只会一种方法-.-)首先下载好打包好的UPX脱壳工具,解压下载好:讲一下用法吧在这个文件夹当中输入cmd进入;输入upx.exe-h有如下反应:

发表回复

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

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