• IO流(随机流,数组内存流


    File file1=new File("test1.txt");
    RandomAccessFile in2=new RandomAccessFile(file1,"rw");

    后面参数是"rw"他可读可写,用seek()来设定位置

    不过在用readLine()时,非ASCII码(比如中文)会出现乱码现象

    不过有办法

    用"iso-8859-1"重新编码,然后重新化为String 

    String s1=in2.readLine();
    byte b1[]=s1.getBytes("iso-8859-1");
    String s3=new String(b1,"GB2312");//GB2312要看机器的默认编码

    数组内存流

    这类流的目的地和源都是内存

    分别有字节数组和字符数组

                File file1=new File("test1.txt");
                ByteArrayOutputStream out1=new ByteArrayOutputStream();//new字节输出流
                byte[] b1="hello world".getBytes();//字节数组
                out1.write(b1);//输出到内存
                ByteArrayInputStream in1=new ByteArrayInputStream(out1.toByteArray());//public byte[] toByteArray()可以返回输出流写入到内存缓冲区的全部字节
                byte[] b2=new byte[out1.toByteArray().length];//new字节输入流
                in1.read(b2);//读入
                System.out.println(new String(b2));
                CharArrayWriter out2=new CharArrayWriter();//new字符输出流
                char[] b3="你好啊".toCharArray();//化为字符数组
                out2.write(b3);//写入内存
                CharArrayReader in2=new CharArrayReader(out2.toCharArray());//new字符输入流
                char[] b4=new char[out2.toCharArray().length];
                System.out.println(b3);
  • 相关阅读:
    cmd开启3389,无需重启!
    x86的控制寄存器CR0,CR1,CR2,CR3
    x64下fs的角色已经换成了gs
    在win64里,只有一种调用约定
    fs寄存器
    【转】C++ 编译器的函数名修饰规则
    windbg ida需要symbols
    WIN7-X64内核模式下编程实现导出表列表查看
    VS2010+WDK配置要点
    比特币 —— 学习笔记(一)
  • 原文地址:https://www.cnblogs.com/vhyc/p/6022432.html
Copyright © 2020-2023  润新知