`

文件输入输出字节流

    博客分类:
  • Java
阅读更多

FileInputStream FileOutputStream的用法总结

 

采用byte数组保存内容.适合小文件的读取写入操作

 

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * 
 * @author hb
 */
public class FileIo {
	/**
	 * 输入流 InputStream   字节
	 * 输出流 OutputStream  字节
	 */
	
	public static void main(String[] args) {
		//String str="中南林业科技大学";
//		String Path="d:\\ISO.vdi";//测试大文件的读取available(),zip文件发现不会读完一个就自动补充到输入流。镜像文件会自动补充
		
		String Path = "d:\\1.docx";
		String Path1 = "d:\\2.txt";
		byte[] bf={-42,-48,-60,-49,-63,-42,-46,-75,-65,-58,-68,-68,-76,-13,-47,-89};//中南林业科技大学的字节.
		File f= new File(Path);
		File f1= new File(Path1);
		byte b[]=reader(f);		
		writter(f1,b);
	}
	
	public static void writter(File f,byte bs[]){
		if(!f.exists()){
			try {
				f.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		
		try {
			FileOutputStream fos = new FileOutputStream(f,true);//将内容加到末尾	
//			FileOutputStream fos = new FileOutputStream(f);//覆盖文件
	//**********************遍历方法1***********		
//			byte[] bs = str.getBytes();
//			fos.write(bf);
			
			//方法2:如果需要屏蔽某些关键字,用for来遍历。***********
			for(byte b:bs){
				
				fos.write(b);	
				
			}

			//写入速度太慢,强制将数据输出到目标
				fos.flush();
				fos.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		
	}
	
	public static byte[] reader(File f){
		try {
			FileInputStream fis = new FileInputStream(f);
			int len = fis.available();
			byte [] bs=new byte[len];
			
			
//*********************************************************//
			
//			while(len>0){			
//			int b= fis.read();
//			System.out.println(b);
//			System.out.println(fis.available());
//			len=fis.available();
//		}
			
//*********************************************************//

//			int i=0;
//			int b= fis.read();
//			while(b!=-1){
//				bs[i]=(byte)b;
//				i++;
//				b= fis.read();
//				
//				
//			}
			
//*********************************************************//
			
			fis.read(bs);
			
			
			fis.close();
			String str= new String(bs);
			System.out.println(str);
			return bs;
		} catch (IOException e) {
			e.printStackTrace();
		}
		return null;
		
	}
	
	
}

 

0
0
分享到:
评论

相关推荐

    基于Java文件输入输出流实现文件上传下载功能

    字节流是指以字节为单位来处理文件输入输出的流。我们使用InputStream和OutputStream来读取和写入文件。 Servlet Servlet是Java语言中用于处理Web请求的API。它提供了多种方式来处理Web请求,包括GET、POST、PUT、...

    C# 将图片文件转换成字节流存储在TXT

    字节流是数据在计算机内存或磁盘间传输的基本单元,它可以是输入流(读取数据)或输出流(写入数据)。在C#中,`System.IO`命名空间下的`Stream`类及其子类如`FileStream`、`MemoryStream`等就是处理字节流的核心类...

    文件 输入输出缓冲流

    在编程领域,文件输入输出(I/O)是处理数据存储和检索的核心部分。在这个场景中,我们关注的是“文件输入输出缓冲流”,这是Java或C++等编程语言中常用的概念,用于提高文件读写效率。缓冲流允许我们将数据批量处理...

    Java文件的输入输出流实例详解

    Java 文件的输入输出流实例详解 Java 文件的输入输出流实例详解是指在 Java 中对文件的输入输出操作的详细介绍。输入输出流是一个通道,程序可以通过这个通道读取源中的数据或将数据传送到目的地。 概念部分: ...

    输入输出流和文件操作

    Java程序设计中的输入输出流和文件操作是编程中不可或缺的部分,它们允许程序与外部世界进行数据交换,包括读取文件内容、写入数据到文件、以及处理标准输入输出。以下是对这些概念的详细阐述: 1. **文件和流的...

    实验9 Java输入输出流.doc

    Java输入输出流是Java编程中一个非常重要的概念,主要用于数据的读取和写入操作,包括文本文件和二进制文件。在实验9中,主要目的是理解和掌握I/O流的分类,以及如何进行文本和二进制文件的读写。 I/O流在Java中被...

    java 输入输出流

    Java中字节流分为两类:输入字节流(InputStream)和输出字节流(OutputStream)。InputStream的基类是`java.io.InputStream`,OutputStream的基类是`java.io.OutputStream`。例如,`FileInputStream`用于从文件中...

    JAVA输入输出流实验报告

    在Java中,输入输出流分为两大类:字节流(Byte Stream)和字符流(Character Stream)。本次实验主要探讨了这两类流的使用,并通过实例代码展示了如何进行基本的输入输出操作。 首先,字节流主要用于处理二进制...

    文件管理和输入输出流.rar

    在IT行业中,文件管理和输入输出流是至关重要的概念,尤其对于程序设计而言。"文件管理和输入输出流"这个主题涵盖了Java、C语言、C++、C#以及JSP等多种编程语言中的相关技术,这些技术使得程序员能够有效地读取、...

    java输入输出流与文件处理

    ### Java输入输出流与文件处理 #### 重要概念与基础知识 **输入输出流与文件处理**在编程领域占据着核心地位,特别是在Java中,通过`java.io`包提供了丰富的类和接口来支持输入输出操作。这包括从键盘读取用户输入...

    Java字节流 .pdf

    字节流基类有:字节输入流(InputStream)、字节输出流(OutputStream);主要用在按字节来处理二进制数据。 InputStream是字节输入流的抽象类,用于读取字节流的抽象类。InputStream的作用是标志那些从不同数据...

    java 文件输入输出流 实例代码

    以上就是Java文件输入输出流的基本用法和实例代码,涵盖了字节流、字符流、缓冲流、转换流、对象序列化以及NIO等关键知识点。通过这些技术,开发者能够有效地在程序中进行文件的读取、写入和复制等操作。在实际项目...

    文件上传/下载使用输入输出流操作文件

    在Java编程中,文件上传和下载是常见的任务,通常涉及到输入输出流(Input/Output Stream)的操作。输入输出流是Java I/O系统的基础,用于在内存与外部存储设备之间传输数据。下面将详细讲解如何使用输入输出流实现...

    coreJava文件输入输出流源代码

    在Java编程语言中,核心Java(Core Java)涵盖了基本的语法和特性,其中包括文件输入输出流(File Input/Output Stream)的概念。文件输入输出流是Java.IO包中的关键类,用于处理程序与磁盘文件之间的数据传输。在这...

    java输入输出流,电子课件

    在Java中,输入输出流分为两大类:字节流(Byte Stream)和字符流(Character Stream)。字节流处理单个字节的数据,而字符流处理Unicode字符。Java的I/O流体系由四个主要接口构成:InputStream和OutputStream处理...

    Java文件输入输出汇总

    Java文件输入输出是Java编程中的基础且重要的一部分,它涵盖了数据在文件系统和程序之间的传输。这个主题包括了多种类和方法,使得开发者能够高效地处理文件内容。本文将深入探讨Java中的文件输入输出机制,以及如何...

    JAVa输入输出流程序

    2. **FileInputStream** 和 **FileOutputStream**:这两个类是字节流的子类,分别用于读取和写入文件。FileInputStream可以从文件中读取原始字节,而FileOutputStream则用于向文件写入原始字节。 3. **FileReader**...

    java中的标准输入输出流

    本文介绍了Java中的标准输入输出流的相关知识,包括标准输入输出流的概念、重定向、字节流与字符流的区别、流的包装与缓冲以及对象的串行化等内容。掌握了这些基础知识,可以帮助开发者更有效地处理程序中的输入输出...

    Java实验6 输入输出流与文件操作.doc

    在Java中,输入输出流可以分为两大类:字节流(Byte Stream)和字符流(Character Stream)。 1. 字节流(Byte Stream) 字节流是Java中的基本输入输出流,用于读写二进制数据。常用的字节流类有: * ...

    Java 输入输出流 源码

    2. **字节流**:InputStream和OutputStream是所有字节流的基类,如FileInputStream和FileOutputStream用于文件操作,而SocketInputStream和SocketOutputStream则涉及网络通信。字节流适用于处理二进制数据,如图片、...

Global site tag (gtag.js) - Google Analytics