zoukankan      html  css  js  c++  java
  • 缓冲流,转换流

    使用字节缓冲流和数组来复制一个东西

    import java.io.*;
    
    public class test1 {
        public static void main(String[] args) throws Exception {
    
            long start = System.currentTimeMillis();
            String path1 = "/Users/mima000000/Desktop/1.jpeg";
            String path2 = "/Users/mima000000/Desktop/2.jpeg";
            BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(path1));
            BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(path2));
            int len;
            byte[] bytes = new byte[1024];
            while ((len=bufferedInputStream.read(bytes))!=-1){
                bufferedOutputStream.write(bytes,0,len);
            }
            bufferedOutputStream.close();
            bufferedInputStream.close();
    
        }
    }
    
    

    转换流

    InputStreamReader指定GBK来读取

    import com.sun.xml.internal.fastinfoset.util.ValueArrayResourceException;
    import sun.nio.cs.ext.GBK;
    
    import java.io.*;
    
    public class test1 {
        public static void main(String[] args) throws Exception {
            String path = "/Users/mima000000/Desktop/1.txt";
            InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(path), "GBK");
            int read;
            while ((read=inputStreamReader.read())!=-1){
                System.out.println((char)read);
            }
            inputStreamReader.close();
    
        }
    }
    
    

    转换文件的编码,读取一个gbk 文件,保存为utf-8

    import com.sun.xml.internal.fastinfoset.util.ValueArrayResourceException;
    import sun.nio.cs.ext.GBK;
    
    import java.io.*;
    
    public class test1 {
        public static void main(String[] args) throws Exception {
            String path = "/Users/mima000000/Desktop/1.txt";
            String path2 = "/Users/mima000000/Desktop/2.txt";
            InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(path), "GBK");
            OutputStreamWriter outputStreamWriter = new OutputStreamWriter(new FileOutputStream(path2) ,"UTF-8");
            int len;
            char[] temp = new char[1024];
            while ((len=inputStreamReader.read(temp))!=-1){
                outputStreamWriter.write(temp,0,len);
            }
            outputStreamWriter.close();
            inputStreamReader.close();
    
        }
    }
    
    
  • 相关阅读:
    Mac上反编译Android apk安装包
    静态链表
    x = x &(x-1)
    C语言itoa()函数和atoi()函数
    以文本方式和二进制方式操作文件
    自己实现memcpy,strcpy与strncpy
    实现中英文混合string的逆向输出
    实现纯英文string的逆序输出
    C语言实现字符串逆序输出
    ASCII码对照表
  • 原文地址:https://www.cnblogs.com/hellosiyu/p/12499958.html
Copyright © 2011-2022 走看看