精华内容
下载资源
问答
  • 写了这么多年的IO流读字符串,下面这个算是我写的最经典的了: InputStream is=response.getEntity().getContent(); byte[] buff=new byte[1024]; byte[] result=new byte[0]; int len=0; int resultHead=0; while...

    写了这么多年的IO流读字符串,下面这个算是我写的最经典的了:

    InputStream is=response.getEntity().getContent();
    byte[] buff=new byte[1024];
    byte[] result=new byte[0];
    int len=0;
    int resultHead=0;
    while((len=is.read(buff))>0){
        result = Arrays.copyOf(result, result.length + len);
        System.arraycopy(buff,0,result,resultHead,len);
        resultHead+=len;
    }

     

     

    展开全文
  • Java 中的一些基本文件操作,包括:文件操作(移动、读写)和文本文件读写
  • 主要介绍了文件路径正确,报java.io.FileNotFoundException异常的原因及解决办法的相关资料,需要的朋友可以参考下
  • 主要介绍了java IO读取图片供前台显示代码分享,具有一定借鉴价值,需要的朋友可以参考下。
  • 主要介绍了Java文件读写IO/NIO及性能比较详细代码及总结,具有一定借鉴价值,需要的朋友可以参考下。
  • java.io几种读写文件的方式

    千次阅读 2019-05-31 16:36:24
     在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据流,字符串流,对象流,zip文件流。  这里介绍几种读写文件的方式 二、InputStream、OutputStream...

    一、Java把这些不同来源和目标的数据都统一抽象为数据流。

      Java语言的输入输出功能是十分强大而灵活的。

      在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据流,字符串流,对象流,zip文件流。

      这里介绍几种读写文件的方式

    二、InputStream、OutputStream(字节流)

    ​
            //读取文件(字节流)
            InputStream in = new FileInputStream("d:\\1.txt");
            //写入相应的文件
            OutputStream out = new FileOutputStream("d:\\2.txt");
            //读取数据
            //一次性取多少字节
            byte[] bytes = new byte[2048];
            //接受读取的内容(n就代表的相关数据,只不过是数字的形式)
            int n = -1;
            //循环取出数据
            while ((n = in.read(bytes,0,bytes.length)) != -1) {
                //转换成字符串
                String str = new String(bytes,0,n,"GBK"); #这里可以实现字节到字符串的转换,比较实用
                System.out.println(str);
                //写入相关文件
                out.write(bytes, 0, n);
            }
            //关闭流
            in.close();
            out.close();
    
    

    三、BufferedInputStream、BufferedOutputStream(缓存字节流)使用方式和字节流差不多,但是效率更高(推荐使用)

            //读取文件(缓存字节流)
            BufferedInputStream in = new BufferedInputStream(new FileInputStream("d:\\1.txt"));
            //写入相应的文件
            BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("d:\\2.txt"));
            //读取数据
            //一次性取多少字节
            byte[] bytes = new byte[2048];
            //接受读取的内容(n就代表的相关数据,只不过是数字的形式)
            int n = -1;
            //循环取出数据
            while ((n = in.read(bytes,0,bytes.length)) != -1) {
                //转换成字符串
                String str = new String(bytes,0,n,"GBK");
                System.out.println(str);
                //写入相关文件
                out.write(bytes, 0, n);
            }
            //清楚缓存
            out.flush();
            //关闭流
            in.close();
            out.close();

    四、InputStreamReader、OutputStreamWriter(字节流,这种方式不建议使用,不能直接字节长度读写)。使用范围用做字符转换

            //读取文件(字节流)
            InputStreamReader in = new InputStreamReader(new FileInputStream("d:\\1.txt"),"GBK");
            //写入相应的文件
            OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream("d:\\2.txt"));
            //读取数据
            //循环取出数据
            byte[] bytes = new byte[1024];
            int len = -1;
            while ((len = in.read()) != -1) {
                System.out.println(len);
                //写入相关文件
                out.write(len);
            }
            //清楚缓存
            out.flush();
            //关闭流
            in.close();
            out.close();

     

    五、BufferedReader、BufferedWriter(缓存流,提供readLine方法读取一行文本)

            //读取文件(字符流)
            BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("d:\\1.txt"),"GBK"));#这里主要是涉及中文
            //BufferedReader in = new BufferedReader(new FileReader("d:\\1.txt")));
            //写入相应的文件
            BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:\\2.txt"),"GBK"));
            //BufferedWriter out = new BufferedWriter(new FileWriter("d:\\2.txt"));
            //读取数据
            //循环取出数据
            String str = null;
            while ((str = in.readLine()) != null) {
                System.out.println(str);
                //写入相关文件
                out.write(str);
                out.newLine();
            }
            
            //清楚缓存
            out.flush();
            //关闭流
            in.close();
            out.close();

     

    六、Reader、PrintWriter(PrintWriter这个很好用,在写数据的同事可以格式化)

            //读取文件(字节流)
            Reader in = new InputStreamReader(new FileInputStream("d:\\1.txt"),"GBK");
            //写入相应的文件
            PrintWriter out = new PrintWriter(new FileWriter("d:\\2.txt"));
            //读取数据
            //循环取出数据
            byte[] bytes = new byte[1024];
            int len = -1;
            while ((len = in.read()) != -1) {
                System.out.println(len);
                //写入相关文件
                out.write(len);
            }
            //清楚缓存
            out.flush();
            //关闭流
            in.close();
            out.close();

    七、基本的几种用法就这么多,当然每一个读写的使用都是可以分开的。为了更好的来使用io。流里面的读写,建议使用BufferedInputStream、BufferedOutputStream

     

    展开全文
  • Java io流文件读取和写入

    千次阅读 2020-07-10 17:16:29
    Java io 流操作demo类 1.读取操作 /** *@author lxw *@date 2020/6/24 *@desc 获取文件输入流,这里读入内存中 *@param [fileName] *@return byte[] **/ public byte[] readPdfFile(String fileName) ...

    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();
            }
        }

     

    展开全文
  • 主要介绍了java_IO向文件中写入和读取内容,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • java IO流总结.md

    2020-01-31 11:25:25
    java I/O流的总结 1.操作数据单位:字节流、字符流 对于文本文件(.txt,.java,.c,.cpp),使用字符流处理 对于非文本文件(.jpg,.mp3,.mp4,.avi,.doc,.ppt,...),使用字节流处理 2.数据的流向:输入流、输出流 ...
  • 1.非常简练易懂的JSON格式化小程序 2.实用的IO流管理,读写文件小程序,可改造 3.实际开发中临时写的自己用的,够用,不够完美
  • java IO流操作,包括文件的读取,写入,上传和下载,支持文本数据和音频等文件
  • 主要介绍了Java基于IO读取文件的方法,涉及Java文件流操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 主要介绍了java IO流文件的读写具体实例,有需要的朋友可以参考一下
  • Java使用IO读取TXT文件

    万次阅读 2018-11-07 23:57:31
    通过BufferedReader读取TXT文件 window系统默认的编码是GBK,而IDE的编码多数为UTF-8,如果没有规定new InputStreamReader(new FileInputStream(file),“GBK”)为GBK会出现读取内容乱码。 //文件路径 String ...

    通过BufferedReader读取TXT文件

    window系统默认的编码是GBK,而IDE的编码多数为UTF-8,如果没有规定new InputStreamReader(new FileInputStream(file),“GBK”)为GBK会出现读取内容乱码。

    		//文件路径
    		String filePath="C:/Users/Admin/Desktop/products.txt";
            File file=new File(filePath);
            BufferedReader reader = null;
            String tempString = null;
            int line =1;
            try {
                // System.out.println("以行为单位读取文件内容,一次读一整行:");
                reader = new BufferedReader(new InputStreamReader(new FileInputStream(file),"GBK"));
                while ((tempString = reader.readLine()) != null) {
                    System.out.println("Line"+ line + ":" +tempString);
                    line ++ ;
                }
                reader.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }finally{
                if(reader != null){
                    try {
                        reader.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }
    

    读取TXT文件并保持在List集合

    TXT文件内容
    商品 价格 类型 数量
    在这里插入图片描述
    创建Product对象

    public class Product{
        private int    id;
        private String name;
        private int    price;
        private char type;
        private int    count;
    
     //将txt文件中的产品对象读取出来并且封装成集合对象
        private static  List<Product> getProductFromTxt(){
            List<Product> list=new ArrayList<>();
            String filePath="C:/Users/Admin/Desktop/products.txt";
            File file=new File(filePath);
            BufferedReader reader = null;
            String content = null;
            int line =1;
            try {
               // System.out.println("以行为单位读取文件内容,一次读一整行:");
                reader = new BufferedReader(new InputStreamReader(new FileInputStream(file),"GBK"));
                while ((content = reader.readLine()) != null) {
                    //System.out.println("Line"+ line + ":" +tempString);
                    String[] arra=content.split(",");
                    Product product=new Product();
                    product.setId(line);
                    product.setName(arra[0]);
                    product.setPrice(Integer.parseInt(arra[1]));
                    char[] ch=arra[2].toCharArray();
                    product.setType(ch[0]);
                    product.setCount(Integer.parseInt(arra[3]));
                    list.add(product);
                    line ++ ;
                }
                reader.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally{
                if(reader != null){
                    try {
                        reader.close();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
            }
        return list;
        }
    

    其中包含了String转char

     char[] ch=str.toCharArray();
     product.setType(ch[0]);
    
    展开全文
  • 主要介绍了Java IO流和文件操作实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 直接上代码: package com.xiayiye.honorfirst.io; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader;...import java.io....import java.io.FileI...
  • Java IO之文件读取

    千次阅读 2018-07-25 19:41:05
    以BIO形式的文件读取和复制: public class MyReadFile { public static void main(String[] args){ try{ //第一步,定位数据源 File f=new File("c:/work/test.txt"); //第二布,建立...
  • JAVAIO流文本文件的读取方式(read 用法) 首先,我们先用通常的read方法去读 代码 import java.io.FileReader; import java.io.IOException; public class FileReaderdemo2{ public static void main...
  • 下面小编就为大家带来一篇JavaIO流文件读取、写入和复制的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • ACM javaIO 快速 读写

    千次阅读 多人点赞 2018-12-04 22:51:29
    在这里先比较一下三种输入方式(这里从文件中读取): 第一种,Scanner类读取文件(in.txt,里面有从一到一百万的的整数) public class Main { public static void main(String[] args) throws IOException{ ...
  • javaio读写文件

    千次阅读 2018-07-24 09:28:55
    此demo为jsp页面读取txt内容,下方的input框输入内容  jsp内容: &lt;%@page import="java.io.InputStreamReader"%&gt; &lt;%@page import="java.io.FileInputStream"%&gt; ...
  • 一些java对文件的基础操作。收藏下来用的时候好查阅。
  • import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; ...
  • java使用IO对象流进行数据读写

    千次阅读 2017-12-17 21:56:20
    对象的读写  使用ObjectInputStream和ObjectOutputStream读写对象(序列化与反序列化)。 只有字节流没有字符流 1).类必须实现Serializable接口 2).给类加个序列化编号,给类定义一个标记,新的修改后的类还...
  • java7源码-JavaIO:JavaIO

    2021-06-04 16:33:26
    JavaIO ##JavaIO基础面试题 1. 什么是IO 它是一种数据的流从源头到目的地。比如文件拷贝,输入流和输出流都包括了。输入流是从文件中读取数据到存储到进程(process)中,输出流是从进程中读取数据然后写入到目标文件...
  • JavaIO流-28-用指定编码表读写文件

    千次阅读 2018-08-12 22:30:55
    如果默认保存,再次打开,可能出现乱码,所以,我们很多人知道需要另存为unicode格式,但是具体的原因不知道,本篇就来学习这个过程,对比GBK和utf-8两个编码表读写文件的过程。 1.默认编码表读写文件 项目下创建...
  • javaIO练习题

    2019-04-03 09:30:04
    JavaIO流,输入输出流概述与总结 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中。其中, 所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的...
  • Java读写文件(excel)

    2017-08-23 10:27:44
    Java读写文件-Excel
  • java调用io

    2018-01-16 10:44:30
    java调用io流,InputStreamReader,BufferReader读取文件
  • Java IO流实现下载文件

    千次阅读 2018-03-15 09:59:49
     //读取要下载的文件,保存到文件输入流  inputStream = new FileInputStream(file);  outputStream = response.getOutputStream();  response.setContentType("application/force-download");  String ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 509,716
精华内容 203,886
关键字:

java读取io

java 订阅