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

IO流(随机流,数组内存流的更多相关文章

  1. Java I/O第二篇 之 (缓冲流 随机流 数组流 数据流)

    1:缓冲流 BufferedReader  BufferedWriter 具有较强的读写能力,能单独读写一行数据,能够减少对硬盘的访问次数. /** * 缓冲流 能够增强对问价数据的可读性,减少访问读 ...

  2. C#内存流示例----->用内存流来读取图片

    背景:一个窗体.一个pictureBox.一个lable[没有选择图片,lable的text为"图片未选择"],在pictureBox1的Click事件中添加如下代码: priva ...

  3. UNIX高级环境编程(7)标准IO函数库 - 二进制文件IO,流定位,创建临时文件和内存流

    1 二进制IO(Binary IO) 在前一篇我们了解了逐字符读写和逐行读写函数. 如果我们在读写二进制文件,希望以此读写整个文件内容,这两个函数虽然可以实现,但是明显会很麻烦且多次循环明显效率很低. ...

  4. Java IO流之内存流

    内存流 1)内存流主要用来操作内存 2)分类 ByteArrayInputStream 主要完成将内容从内存读入程序之中 ByteArrayOutputStream 主要是将数据写入到内存中. 3)输 ...

  5. [源码]ObjectIOStream 对象流 ByteArrayIOStream 数组流 内存流 ZipOutputStream 压缩流

    1.对象流 import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File ...

  6. Java:IO流其他类(字节数组流、字符数组流、数据流、打印流、Properities、对象流、管道流、随机访问、序列流、字符串读写流)

    一.字节数组流: 类 ByteArrayInputStream:在构造函数的时候,需要接受数据源,而且数据源是一个字节数组. 包含一个内部缓冲区,该缓冲区包含从流中读取的字节.内部计数器跟踪 read ...

  7. Java API —— IO流(数据操作流 & 内存操作流 & 打印流 & 标准输入输出流 & 随机访问流 & 合并流 & 序列化流 & Properties & NIO)

    1.操作基本数据类型的流     1) 操作基本数据类型 · DataInputStream:数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型.应用程序可以使用数据输出 ...

  8. 【java】内存流:java.io.ByteArrayInputStream、java.io.ByteArrayOutputStream、java.io.CharArrayReader、java.io.CharArrayWriter

    package 内存流; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java. ...

  9. Java之IO流进阶篇:内存流,打印流,对象流

    Java中的IO流,即为输入输出流.所谓输入输出流,都是相对于程序而言,程序就是这个参照物.一张图看懂输入输出流: 输入流抽象基类:InputStream,Reader 输出流抽象基类:OutputS ...

随机推荐

  1. 尝试跑一跑Scut

    前段时间都在用 IIS+WCF+Redis+MSSQL 的框架做服务器,前段时间看到了 Scut 的开源框架,整个架构还是蛮干净整洁的... 今天抓来跑一跑. 按照教程安装好所有的环境,版本是6.7. ...

  2. phonegap apk

    在 Windows 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序本贴首发于:http://xuekaiyuan.com/forum.php?mod=vie ...

  3. -_-#【userAgent】极速模式与非极速模式存在差异

    UC浏览器 Android 极速模式 UC浏览器 Android 非极速模式

  4. 维基百科上—数据仓库、数据挖掘、OLAP三者之间的区别

    数据仓库可以作为数据挖掘和OLAP等分析工具的资料来源,由于存放于数据仓库中的资料,必需经过筛选与转换,因此可以避免分析工具使用错误的资料,而得到不正确的分析结果. 数据挖掘和OLAP同为分析工具,其 ...

  5. 安装loadrunner11 ,出现如下错误如何解决?

    出现的问题是: 安装LoadRunner 11时弹窗提示"Micosoft Visual C++ 2005 SP1 可再发行组件包(X86):'命令行选项语法错误.键入命令 / ? 可获得帮 ...

  6. NSOutputStream\NSInputStream

    NSOutputStream-保存网络资源到本地 _filePath = [[NetworkManager sharedInstance] pathForTemporaryFileWithPrefix ...

  7. 非常有利于seo的主题(红黄蓝绿)通用教程

    这篇教程是帮助刚使用Wordpres的朋友们的,免得自己弄得一头雾水.大江网络来教大家了解下如何设置自定义导航菜单. 一.首先进入后台,点击“外观”,选择“菜单”按钮,如下图: 然后看到右边界面中菜单 ...

  8. Extjs 4.2.0 MVC 架构

    内容: 1. 文件结构 2. 创建项目 3. 定义控制器 4. 定义视图 5. 控制Grid 6. 创建Model和Store 7. 通过Model保存数据 8. 保存到服务器端 大型客户端程序通常都 ...

  9. sts 去掉启动的rss功能

    STS(spring tools suite) 每次开启都显示,比较烦人,可以在设置中禁用掉,具体方法:window->Perferences,然后查找dashboard,将启动时展示dashb ...

  10. php显示日期(今天、昨天、本周、上周、本月、上月、)

    <?php //今天 $today = date("Y-m-d"); //昨天 $yesterday = date("Y-m-d", strtotime( ...