讲多了大家也看不明白,下面我来代码解析,这些代码都是已经运行觉得
挺有用,拿来共享一下……想要更多了解的,加我的QQ:944841552
代码片段1
package IOTest;
import java.io.*;
/**
* 输入输出流测试
* @author 黄端修改
*/
public class BaseIO {
//程序主方法
public static void main(String args[])throws Exception{
BaseIO bi=new BaseIO();
//读取我们当前正在编写的这个java源文件
String fileName="src\\IOTest\\BaseIO.java";
String result=bi.readFile2String(fileName);
System.out.println(result);
}
/**
* 读取指定文件名的内容,做为字行串返回
* @param fileName:文件名
* @return :读到的内容做为字符串返回
* @throws IOException:可能会抛出IO异常
*/
public String readFile2String(String fileName)throws java.io.IOException{
//构造输入流对象,做为一个Inpustream对象使用
//因为创建的对象是Inpustream的子类的对象,我们用父类型变量引用,方便统一使用
java.io.InputStream ins=new java.io.FileInputStream(fileName);
//通过文件对象创建输入流
//File srcFile=new File(fileName);
//java.io.InputStream ins=new java.io.FileInputStream(srcFile);
//根据流中的字节长度,创建一个byte数组,保存读到的数据
int len= ins.available();
byte[] contentByte=new byte[len];
//将流中的数据读到数组中
ins.read(contentByte);
//将byte数组转换为字符串
String s=new String(contentByte);
return s;
}
}
代码片段2
package IOTest;
import java.io.*;
/**
* 输入输出流测试
* @author 黄端修改
*/
public class BaseIOv1 {
//程序主方法
public static void main(String args[])throws Exception{
BaseIOv1 bi=new BaseIOv1();
//读取我们当前正在编写的这个java源文件
String srcName="src\\IOTest\\BaseIOv1.java";
//要复制到的目标文件
String bakName="src\\IOTest\\BaseIOv1test.java.bak";
boolean result=bi.copyFile(srcName,bakName);
System.out.println("复制结果:"+result);
}
/**
* 简单文件复制方法
* @param srcFile:源文件名
* @param destFile:目标文件名
* @throws IOExcepton :IO异常
* @return:是否cp成功
*/
public boolean copyFile(String srcFile,String destFile)throws IOException{
//创建从源文件来的输入流
InputStream ins=new FileInputStream(srcFile);
//缓冲输出流对象:如果文件中己有内容则覆盖原来内容
OutputStream out=new FileOutputStream(destFile);
int i=0;
//从输入流中读取一个字节
while((i=ins.read())!=-1){
//将这个字节写入到输出流
out.write(i);
}
ins.close();
//清空输出流的缓存并关闭
out.flush();
out.close();
return true;
}
}
代码片段3
package IOTest;
import java.io.*;
/**
* 输入输出流测试
* @author 黄端修改
*/
public class BaseIOv2 {
//程序主方法
public static void main(String args[])throws Exception{
BaseIOv2 bi=new BaseIOv2();
//读取我们当前正在编写的这个java源文件
String srcName="src\\IOTest\\BaseIOv2.java";
//要复制到的目标文件
String bakName="C:\\Documents and Settings\\Administrator\\桌面\\BaseIOv1test.java.bak";
boolean result=bi.bufferedCopyFile(srcName,bakName);
System.out.println("复制结果:"+result);
}
/**
* 使用缓冲流拷文件测试
* @param srcFile:源文件名
* @param destFile:目标文件名
* @throws IOExcepton :IO异常
* @return:是否cp成功
*/
public boolean bufferedCopyFile(String srcFile,String destFile)throws IOException{
//创建从源文件来的输入流
InputStream ins=new FileInputStream(srcFile);
//构造输入缓冲流
BufferedInputStream bis=new BufferedInputStream(ins);
//构造缓冲输出流对象
OutputStream out=new FileOutputStream(destFile);
BufferedOutputStream bos=new BufferedOutputStream(out);
int i=0;
while((i=bis.read())!=-1){
//从缓冲输入中读,写出到缓冲输出
bos.write(i);
}
ins.close();
bos.flush();
bos.close();
return true;}}
分享到:
相关推荐
Java IO体系结构看似庞大复杂,其实有规律可循,要弄清楚其结构,需要明白两点: 1. 其对称性质:InputStream 与 OutputStream, Reader 与 Writer,他们分别是一套字节输入-输出,字符输入-输出体系 2. 原始处理器(适配器)...
对于java IO流的介绍和使用,还有涉及的相关类的详细介绍,配有示例代码
深入理解LINUX内核第三版- 第13章.IO体系结构和设备驱动程序.pdf 致读者:深入理解LINUX内核第三版pdf版本扫描出来的,内容比较大,所以必须分章节才能上传。我上传比你下载要更长时间,请大家谅解和支持,但是本文...
586.584.JAVA基础教程_IO流-IO流的体系结构(586).rar
《深入理解linux内核中文第三版》,高清晰扫描,真正中文第三版,对Linux 2.6内核进行了详细而细致的讲解。由于之前的压缩包分卷太多,现提供每一章的单独下载文件。100%高清晰第三版!
的原理及体系结构 马鸣锦 朱剑冰 何红旗 杜 威 编著 PCIExpress是第三代高性能IO总线,在总线结构上采取了根本性的变革,主要体 现在两个方面:一是由并行总线变为串行总线;二是采用点到点的互连...
几乎每一种外设都是通过读写设备上的寄存器来进行的。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续...而具体采用哪一种则取决于CPU的体系结构。
清华大学 计算机体系结构_第一次作业及参考答案
嵌入式系统体系结构与开发——指令系统与IO接口资料PPT教案学习.pptx
深入理解linux内核,中文第三版,可随便复制粘贴,包含所有20章的内容
《80x86汇编语言与计算机体系结构》书中例子有用到作者的io.h等文件,这些文件在随书光盘中。
俺花了N个大洋买来的,现在免费提供给大家
主要介绍了Java IO流体系继承结构图,非常不错,具有参考借鉴价值,需要的朋友可以参考下
第2章RapidIo技术 2.1总体原则 2.2规范体系 2.3RapidIo协议概述 2.4包格式 2.5事务格式与类型 2.6消息传递 2.7全局共享存储器 2.8未来的扩展 2.9流理控制 2.10并行物理层 2.11串行物理层 2.12链路协议 2.13维护与...
JAVA知识体系结构全景,这是Java工程师的作战地图,一图胜千言,让您清晰的了解Java知识体系和能力体系,构建自己的知识树和能力树。方向明确,目标清晰。哪些必须掌握,哪些是核心,哪些是重点,哪些是难点,哪些...
RapidIO 互连协议 英文版 V2.2版本,RapidIO是由Motorola和Mercury等公司率先倡导的一种高性能、 低引脚数、 基于数据包交换的互连体系结构,是为满足和未来高性能嵌入式系统需求而设计的一种开放式互连技术标准
RapidIO是一种高性能、引脚数少、 基于数据包交换的互连体系结构,是为满足和未来高性能嵌入式系统需求而设计的一种开放式互连技术标准。本协议为4.1版本。
library-statistics:codegallery.io中的“清洁体系结构”演示项目
RapidIO 是一种分组交换结构,最初开发它的目 的是用来连接线路板上的芯片和连接机箱内的线路板,RapidIO 采用包交换技术,在网络处理器(NPU)、 中央处理器(CPU)和数字信号处理器(DSP)之间的通信具有高速、低...
完全可以从IO 包中去除,还完全不影响IO 包的结构,却让其更“纯洁”――纯洁的Decorator 模式。 PrintStream 也可以认为是一个辅助工具。主要可以向其他输出流,或者FileInputStream 写入数据,本身内部实现还是带...