- 浏览: 109470 次
- 性别:
- 来自: 江西
文章分类
- 全部博客 (79)
- java (8)
- java虚拟机 (3)
- 学习类 (4)
- Java SE (26)
- java引用 (1)
- 工作总结。 (2)
- JSF (1)
- 软件架构 (1)
- Javascript (10)
- struts2 (1)
- eclipse (1)
- mysql (1)
- ArcGis (4)
- dojo (1)
- Extjs (1)
- jquery (4)
- 软件包 (1)
- 控件 (1)
- tuijian (0)
- 命令 (1)
- JAVAEE (1)
- goagent教程详细版猫理会 (0)
- python (0)
- tomcat (1)
- eclipse 出 can not create virtual machine (1)
- spring (3)
- 设计模式 (3)
- hibernate (1)
- dd (0)
- 样式 (0)
- http://blog.csdn.net/wisgood/article/details/11762427 (0)
最新评论
-
bz5011:
node.eachChild() 要延迟,等node.expa ...
EXTJS学习笔记----EXTJs中带复选框的tree,选中父节点时所有子节点也被选中 -
hvang1988:
[img][/img][url][/url][flash= ...
jquey 取值 -
xiaguangme:
写的很不错
java需要关注的知识点---HashMap -
perfect613:
sinly 写道perfect613 写道你好,有个问题请教一 ...
JS动态创建表格,动态设置属性,动态添加事件 . -
aiyingpower:
把哥的代码拿过来也不注明一下?
arcgis地图————————基础操作
1.无论何时使用readLine().都不应该使用DataInputStream,而应该使用BufferedReader.
2.RandomAccessFile,只有RandomAccessFile支持搜索操作,并且只适用于文件。
到jdk1.4中,它的大部分功能被nio存储映射文件所取代。
3.读文件的几种方式:
缓冲输入文件
从内存中输入:
格式化的内存输入:
使用available的工作方式会随着所读取的媒介类型不同而有所不同,需要小心使用:
4.写文件:
DataOutputStream:
RandomAccessFile[/b]
读取二进制文件:
2.RandomAccessFile,只有RandomAccessFile支持搜索操作,并且只适用于文件。
到jdk1.4中,它的大部分功能被nio存储映射文件所取代。
3.读文件的几种方式:
缓冲输入文件
public class BufferedInputFile { public static String read(String file) throws IOException{ StringBuffer sb = new StringBuffer(); FileReader fileReader = new FileReader(file); BufferedReader br = new BufferedReader(fileReader); String s = null; while((s = br.readLine()) != null) { sb.append(s + "\n"); } return sb.toString(); } public static void main(String[] args) { try { System.out.println(read("D:\\RSA75WP\\test\\src\\com\\io\\BufferedInputFile.java")); } catch (IOException e) { e.printStackTrace(); } } }
从内存中输入:
public class MemoryInput { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub StringReader in = new StringReader(BufferedInputFile .read("D:\\RSA75WP\\test\\src\\com\\io\\MemoryInput.java")); int c; while((c = in.read()) != -1) { System.out.print((char)c); } } }
格式化的内存输入:
public class FormattedMemoryInput { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { DataInputStream dis = new DataInputStream( new ByteArrayInputStream( (BufferedInputFile .read("D:\\RSA75WP\\test\\src\\com\\io\\FormattedMemoryInput.java") .getBytes()))); try { while(true) { System.out.print((char)dis.readByte()); } } catch (Exception e) { System.out.println("End of stream"); } } }
使用available的工作方式会随着所读取的媒介类型不同而有所不同,需要小心使用:
public class TestEof { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { DataInputStream in = new DataInputStream(new BufferedInputStream( new FileInputStream( "D:\\RSA75WP\\test\\src\\com\\io\\TestEof.java"))); while (in.available() != 0) { System.out.println((char)in.readByte()); } } }
4.写文件:
DataOutputStream:
public class DateOutputStreamTest { public static void main(String[] args) throws IOException { DataOutputStream dops = new DataOutputStream(new BufferedOutputStream(new FileOutputStream("Data.txt"))); dops.writeDouble(3.32); dops.writeUTF("test outputStream"); dops.writeInt(4); dops.close(); DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream("Data.txt"))); System.out.println(dis.readDouble()); System.out.println(dis.readUTF()); System.out.println(dis.readInt()); } } [b]
RandomAccessFile[/b]
public class UsingRandomAccessFile { static String fileNme = "rtest.dat"; static void display() throws IOException{ RandomAccessFile raf = new RandomAccessFile(fileNme, "r"); for ( int i = 0; i< 7 ;i++) { System.out.println("Value:" + i + ":" + raf.readDouble()); } System.out.println(raf.readUTF()); raf.close(); } /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { RandomAccessFile rf = new RandomAccessFile(fileNme,"rw"); for(int i = 0; i < 7; i++) rf.writeDouble(i*1.414); rf.writeUTF("this end of the file"); rf.close(); display(); rf = new RandomAccessFile(fileNme,"rw"); rf.seek(5*8); rf.writeDouble(47.0001); rf.close(); display(); } }
读取二进制文件:
public class BinaryFile { public static byte[] read(File bFile) throws IOException { BufferedInputStream bf = new BufferedInputStream(new FileInputStream(bFile)); try { byte[] data = new byte[bf.available()]; bf.read(data); return data; }finally{ bf.close(); } } public static byte[] read(String fileName) throws IOException{ return read(new File(fileName).getAbsoluteFile()); } }
发表评论
-
日志记录工具类
2012-11-09 15:51 1984import org.apache.log4j.Log ... -
Unnecessary Code Detector
2012-07-23 10:00 1082•Put org.ucdetector_x.y.z.jar i ... -
java代码优化
2012-05-29 15:13 930可供程序利用的资源(内存、CPU时间、网络带宽等)是有限的,优 ... -
重入锁
2012-02-08 14:18 1150重入锁(ReentrantLock)是一种递归无阻塞的同步机制 ... -
java需要关注的知识点---并发之加入一个新线程
2012-01-03 11:29 875package com.thread; public ... -
java需要关注的知识点---并发之后台线程
2011-12-30 16:07 901所谓的后台线程,是指在程序运行的时候在后台提供一种通用服务的线 ... -
java需要关注的知识点---并发之从任务中产生返回值
2011-12-29 16:04 704class TaskWithResult implemen ... -
java需要关注的知识点---并发之使用Executor
2011-12-29 16:00 946public class CachedthreadPool ... -
java需要关注的知识点---并发之定义任务
2011-12-29 12:53 7751:定义任务: public class LiftOff ... -
java需要关注的知识点---I0之XML的生成
2011-12-27 17:47 916package com.io; import java. ... -
java需要关注的知识点---I0之对象序列化
2011-12-27 10:59 9531。对象序列化: 序列化是什么: 序列化就是将一个对象的状 ... -
java需要关注的知识点---I0之压缩
2011-12-26 15:38 8951.GZIP压缩: public class GZIPPc ... -
java需要关注的知识点--新I0(NIO)之大文件读取
2011-12-22 14:43 2840在读取大文件的时候,采用管道方式进行分流,使用byteBuff ... -
java需要关注的知识点---Charset
2011-12-21 10:25 8481.Charset 名称必须以字母或数字开头。空字符串不是合法 ... -
java需要关注的知识点---I0之获取特殊属性
2011-12-20 17:51 7231.获取文本的编码方式: String encoding ... -
java需要关注的知识点---I0之新IO(NI0)
2011-12-20 15:40 1178缓冲器操纵数据: ByteBuffer是数据移进移出通道的唯一 ... -
java需要关注的知识点---标准I0流
2011-12-20 11:16 678System.in public class System ... -
JVM内存区域
2011-12-07 17:07 1785一、JVM内存区域组成 j ... -
TreeeMap的底层实现
2011-11-28 17:46 1098treeMap插入元素的图解法: 插入前: 插入过程: ... -
java需要关注的知识点---HashSet
2011-11-28 15:20 10031.构造方法: public HashSet() { ...
相关推荐
Java知识点总结大全(五) -- io流,关注后面会分享面向对象,io,集合,多线程,网络,sql的总结
Java基础知识点,内容比较全面。 目录: 1.1 Java中的引用概念 1.2 Java多线程相关知识 1.3 Java中的垃圾回收算法 1.4 Java IO流相关知识 1.5 JVM ClassLoader机制 1.6 Java中的synchronized使用 1.7 Java中的...
编程语言java-io-decorator知识点.pdf
关于IO方面的知识。很基础,但很实用!!
36个io流相关的知识点,36个io流相关的知识点,36个io流相关的知识点
这几个思维导图详细的整理了相关知识点的总结,以尽可能详细全面的进行总结.
JAVAIO流相关知识点,免费下载哦
java基础的知识点,到IO流
自己整理了一下javaIO流的相关知识点 用xmind软件做了一下
Java中IO流的基础知识点
java面试各大知识点,非常齐全。jvm内存分区,gc算法,类加载机制。并发编程,并发编程各大容器,锁。框架spring mybatis原理,组件介绍。架构设计有设计模式,负载均衡。网络有协议,java 高并发io框架netty。数据...
Java学习更是如此,知识点总结目录如下: 目录 一、 Java概述 3 二、 Java语法基础 5 数据类型 5 运算符号 14 语句 15 函数 15 方法重载(Overloadjing)与重写(Overriding) 16 数组 17 总结 18 三、 常见关键字 ...
动力节点的Java课程适合绝对零基础的观看,...每一个知识点都讲解的非常细腻,由浅入深。适合非计算机专业,想转行做Java开发的朋友,或者想让Java基础更扎实的小伙伴,配套资料下载:http://www.bjpowernode.com/?csdn
java详细的知识点整理,包括:jvm原理、IO、类加载过程、集合、线程、反射、泛型等java基础,spring原理、特点,微服务架构、数据库引擎、消息组件、算法、数据结构等。偏理论的知识较多,主要用于面试。
java的IO流操作,在java中是非常的知识点。开发者掌握基本点io流操作是非常重要的。
类加载器 ClassLoader 反射 Stream 流 函数式编程 Lambda 表达式 网络编程-协议 网络编程-端口 网络编程-IP 多线程 IO流-字节流 IO流-字符流 IO流-转换流 File Map HashMap 序列化和反序列化 可变参数 类型通配符 ...
java各知识点详细总结(毕向东笔记整理)。第一章:编程基础 3-11 第二章:数组 11 -31 第三章:面向对象程序开发 31 -74 第四章:异常机制 74 -89 第五章:多线程技术 89 -122122122 第六章:常用类 API 122API 122 ...
自己总结,知识点全面,包含了,IO流,异常机制等学习笔记 含有代码实例可供参考,需要mybase打开 持续更新,需要的自行下载 附上本人写的学习博客 https://blog.csdn.net/qq_35577787/article/details/105088073
一、流的分类 1、按功能分 读取流:InputStream Reader 写出流:OutPutStream Writer 2、按流的类型分类 字节流:InputStream OutputStream 字符流:Reader Writer 二、流功能分析 读取流...
java面试各大知识点,非常齐全。jvm内存分区,gc算法,类加载机制。并发编程,并发编程各大容器,锁。框架spring mybatis原理,组件介绍。架构设计有设计模式,负载均衡。网络有协议,java 高并发io框架netty。数据...