`
wjheye
  • 浏览: 83767 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

分别用FileIn/OutputStream 和FileWrite/Reader 将某些数据写入到某个文件,再将写入的内容从中读出

阅读更多
import java.io.*;
/*
 * 1、流是字节序列的抽象概念
 * 2、文件时数据的静态存储形式,而流是指数据传输时的形态
 * 3、java的流分两类:节点流类和过滤流类(处理流类)
 * 4、InputStream 和OutputStream 都是用来处理字节的 用来处理二进制格式的文件
 * 5、Reader 和Writer 是所有字符流来的抽象基类,用于简化对字符串的输入输出编程,即用于读写文本数据
 * 6、二进制文件和文本文件的区别:文本文件时二进制文件的特例
 * 7、本程序目的是 用FileOutputStream类想文件中写入一个字符串,然后用FileInputStream读出写入的内容
 * 8、或是用FileWriter类向文件中写入一个字符串,然后用FileReader读出写入的内容
 */
public class FileStream {
	public static void main(String args[]) throws IOException{
		FileOutputStream fos  = new FileOutputStream("hello.txt");
		fos.write("www.baidu.com".getBytes());
		//把字符串的内容写入到文件中 但write方法不支持直接写入字符串的 所以获得字符串的字节数组 并把回字节数组的所有内容写入到文件中
		//write方法可以写入一个字节 或者一个字节数组
		fos.close();
		//此处如果fos.close方法也可以 程序会自动的调用flush刷新方法 将数据写入到文件当中
		//但是 如果调用write(int byte)方法不会自动调用flush刷新方法 将数据写入到文件当中
		//write(byte [] buf)方法会自动的调用flush方法
	
		File file = new File("hello.txt");
		byte buf []= new byte[1024];
		FileInputStream fis  = new FileInputStream(file);
		int len = fis.read(buf);
		System.out.println(new String(buf,0,len));
		fis.close();
		
		//以下用FileWriter 和FileReader 处理文件
		FileWriter fw = new FileWriter("hell.txt");
		fw.write("hello world 世界");
		//此时的write的方法是将数据写入到缓冲区当中了,并没有真的完完整整的写入到磁盘当中
		fw.close();
		//此处必须调用close方法才能将数据刷新到文件或者磁盘当中 此write(String s)方法不会自动的调用flush方法
		FileReader fr = new FileReader("hell.txt");
		char charBuf [] = new char[1024];
		// 字符数组
		int le  = fr.read(charBuf);
		//如果 le=-1,那么程序会抛出 String index out of range:-1 越界的错误,说明没有从文件中读取到内容或者是没有写入到文件中内容
		System.out.println(new String(charBuf,0,le));
		fr.close();
		
		
		
	}

}

分享到:
评论

相关推荐

    EasyExcel 并发读取文件字段并进行校验,数据写入到新文件,批量插入数据到数据库

    下面我们将详细探讨如何使用EasyExcel实现并发读取文件字段、进行数据校验、将数据写入新文件以及批量插入到数据库的操作。 1. **EasyExcel介绍** EasyExcel是一款轻量级的Java Excel处理框架,它基于NIO和内存...

    InputStream与OutputStream及File间互转

    一种常见的方法是先将`OutputStream`的数据写入内存中的`ByteArrayOutputStream`,然后再将其转换为`InputStream`: ```java ByteArrayOutputStream baos = new ByteArrayOutputStream(); OutputStream out = ...

    IO流文档InputStream / OutputStream

    IO流是Java中的一种基本的数据交换方式,通过InputStream和OutputStream可以实现数据的读取和写入,而Reader和Writer可以实现字符流的读取和写入。IO流的知识点很多,需要认真学习和掌握。 InputStream的类型: * ...

    手机移动开发将byte数组写入文件的JAVA代码

    - 这个输出流用于将数据写入文件系统。 4. **写入数据**: - `fout.write(res);` - 这行代码将 `byte` 数组 `res` 写入到前面创建的输出流中。 - `write` 方法是 `OutputStream` 的成员方法,用于将指定的 `...

    Android-将数据写入Excel表格并存储到外部存储中

    总的来说,Android应用程序将数据写入Excel并存储到外部存储是一个涉及权限管理、文件操作和第三方库使用的综合任务。通过正确理解和运用这些知识点,开发者可以构建出能够满足用户需求的高效数据导出功能。

    java将mysql数据写入到excel

    在IT行业中,经常需要将数据库中的数据导出到Excel文件,以便进行数据分析、报表生成或测试数据准备。Java作为广泛使用的编程语言,结合MySQL数据库和Apache POI库,可以实现这个功能。本教程将深入讲解如何使用Java...

    使用jxl,将数据写入excel中

    本篇主要介绍如何使用Java库jxl来将数据写入Excel文件中,这对于数据分析、报告生成或者自动化测试等场景非常实用。 jxl是一个开源的Java库,它提供了读取和写入Excel文件的功能。在Java项目中,如果你需要处理...

    io流写入和读取

    首先,IO流是Java中的一个基础概念,它允许程序从源(如键盘、文件或网络连接)读取数据,并将数据写入目的地(如显示器、文件或网络)。Java的IO流分为两大类:字节流和字符流。字节流处理单个字节的数据,如图像...

    Android写入xls文件

    在Android平台上,开发人员经常需要处理数据的存储和读取,其中就包括写入和读取Excel文件。Excel文件通常用于存储结构化的表格数据,便于分析和管理。本篇文章将详细探讨如何在Android中实现写入XLS文件,主要涉及...

    Java实现文件复制,File文件读取,写入,IO流的读取写入

    本主题将深入探讨如何使用Java实现文件复制、File类的文件读取和写入,以及I/O流的读取与写入。下面将详细阐述这些知识点。 1. **Java文件复制** 文件复制通常涉及读取源文件内容并将其写入目标文件。在Java中,...

    使用POI将数据写入到EXCEL

    本文将详细讲解如何利用POI将数据写入到Excel文档。 首先,你需要确保已经设置了Maven项目,并在pom.xml文件中添加了Apache POI的依赖。POI的最新版本通常可以在这里找到:...

    java 文件存储 Inputstream outputstream reader writer的用法

    通过以上的实例,你可以了解到Java中如何使用`InputStream`、`OutputStream`、`Reader`和`Writer`进行文件读写操作。不断实践这些基本的IO操作,将有助于你更好地理解和掌握Java的文件处理能力。

    java读写properties文件,解决系统找不到指定路径,解决写入后读取正常,但文件数据未更新问题

    然而,有时可能会遇到一些常见问题,比如系统找不到指定的Properties文件路径、写入后读取显示正常但实际文件数据未更新等。下面我们将详细讨论这些问题及其解决方案。 首先,让我们看看如何在Java中正确地读取...

    asp.net 将DataGrid数据写入Excel文件.rar

    3. **写入DataGrid数据**:遍历之前保存的数据结构,为每个数据项创建一个新的行,并将数据写入对应的单元格。可以设置单元格的样式,如字体、颜色、对齐方式等,以达到与DataGrid类似的效果。 4. **响应下载**:将...

    将输出流OutputStream转化为输入流InputStream的方法

    在这种情况下,可能需要先将`OutputStream`的内容刷新到目标(例如文件),然后再创建一个新的`InputStream`来读取该目标。 在实际开发中,`PipedOutputStream`和`PipedInputStream`也可以用来实现输出流和输入流...

    Android 之 将RAW资源文件写入SD卡工具类

    - 复制数据:通过`IOUtils.copy(inputStream, outputStream)`或逐字节读写,将资源文件内容复制到输出流。 - 关闭流:确保在操作完成后关闭输入流和输出流,避免资源泄漏。 6. **异常处理**: 文件操作过程中...

    Java流(文件读写操作)

    例如,`FileOutputStream`用于将数据写入文件。 ##### 2. 按照流所处理的数据类型 - **字节流**:处理的是8位的字节数据,适用于处理非文本数据如图像、音频等。常见的字节流包括`InputStream`和`OutputStream`。 ...

    使用字节流方式操作文件,读取和写入文件

    这个例子中,`in.read(buffer)`读取数据到缓冲区,然后`out.write(buffer, 0, length)`将缓冲区中的数据写入目标文件。循环持续到没有更多的数据可读。 **异常处理:** 在进行文件操作时,应始终考虑可能的异常,如...

    利用POI读取excel写入到word

    5. **保存Word文档**:完成数据写入后,使用OutputStream将Word文档保存到文件系统。 ```java FileOutputStream out = new FileOutputStream("path_to_your_word_file.docx"); doc.write(out); out.close(); ``...

    使用JDBC和Hibernate来写入Blob型数据到Oracle中

    要将Blob型数据写入Oracle数据库,我们可以使用两种常见的技术:JDBC(Java Database Connectivity)和Hibernate。JDBC是Java与数据库交互的标准API,而Hibernate则是一个ORM(Object-Relational Mapping)框架,...

Global site tag (gtag.js) - Google Analytics