- 浏览: 191994 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (75)
- JSP/Servlet (4)
- Spring (5)
- Hibernate (1)
- Struts (5)
- EJB (3)
- Swing (1)
- Core Java (29)
- Algorithm (2)
- HTML/CSS/JavaScript (0)
- JQuery/AJAX (1)
- Oracle (0)
- Design Pattern (2)
- MVC (0)
- Web服务器 (3)
- 杂项 (0)
- NetCDF On Java (0)
- Java Extension (2)
- iBATIS (4)
- English Articles (1)
- JavaEE (3)
- Java8 (3)
- Android (3)
- Maven (1)
- Hadoop (1)
- Docker (0)
- Java高并发 (0)
最新评论
-
Bll:
为什么要推荐jsp动作标签访问呢?
JavaBean入门 - 概念和简单例子 -
落雪封:
我检查过了,没有注释,只是大文本,也一直报这个错,求原因
Abator生成错误:XML document structures must start and end within the same entity
在Java中文件的读取和写入操作都通过流(stream)来进行。
我们对于流并不陌生,因为在C++中已经有了这个概念。
在Java中,最主要的四个流如下:
读取:
InputStream
Reader
写入:
OutputStream
Writer
Stream用来处理单纯的字节,而Reader和Writer用来处理Unicode。
例如,当我们需要读写中文的时候,我们就需要使用Reader和Writer。
例如,我们需要对某个文件进行缓冲读取的时候,可以这样:
DataInputStream din = new DataInputStream(
new BufferedInputStream(
new FileInputStream("文件完整路径")));
读取简单纯英文字符文件的代码:
读取带有中文的Unicode字符文件的代码:
我们对于流并不陌生,因为在C++中已经有了这个概念。
在Java中,最主要的四个流如下:
读取:
InputStream
Reader
写入:
OutputStream
Writer
Stream用来处理单纯的字节,而Reader和Writer用来处理Unicode。
例如,当我们需要读写中文的时候,我们就需要使用Reader和Writer。
例如,我们需要对某个文件进行缓冲读取的时候,可以这样:
DataInputStream din = new DataInputStream(
new BufferedInputStream(
new FileInputStream("文件完整路径")));
读取简单纯英文字符文件的代码:
package corejava2.io.stream; import java.io.*; public class InputStreamTest { public static void main(String[] args) { try { DataInputStream din = new DataInputStream( new BufferedInputStream( new FileInputStream("E:\\test_stream.txt"))); int c; while ((c = din.read()) != -1) System.out.print((char) c); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } }
读取带有中文的Unicode字符文件的代码:
package corejava2.io.reader; import java.io.*; public class InputStreamReaderTest { public static void main(String[] args) { try { InputStreamReader in = new InputStreamReader( new FileInputStream("E:\\test_stream.txt")); int c; while ((c = in.read()) != -1) System.out.print((char) c); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } }
发表评论
-
Java高并发和多线程系列 - 1. 线程基本概念
2018-04-16 09:45 3621. 什么是线程? 线程和进程的区别 在了解线程的概念前,我 ... -
Java多线程编程-同步和锁
2017-10-04 13:29 01. 竞态条件(Race Condition) 两个或以上线 ... -
Core Java - 流(Stream) - 字节流和字符流(一)
2016-12-02 17:27 4910. 概述: Java中基于流的 ... -
Java开发 - 异常 - 使用throws
2016-04-21 11:35 562如果一个方法可能会产生异常,我们需要用throws关键字给它标 ... -
Java开发 - 异常 - 抛出异常
2016-04-21 11:24 630问题: 如何抛出一个系统异常并且捕获它 代码如下: pu ... -
Java8通过管道流(stream)来实现集合的一些聚合函数
2015-10-22 10:24 1803stream的一些聚合函数包括: count(), findF ... -
数组自定义排序
2015-10-21 14:17 1459CustomComparator.java package ... -
数组排序
2015-10-21 09:58 706SortArray.java package coreja ... -
HashMap使用范例
2015-10-20 14:25 794HashMapDemo.java package core ... -
Java8新特性 - Lambda表达式 - Functional Interfaces
2015-10-20 09:52 775Mapper.java package corejava8 ... -
使用Hashtable和线程技术制作自己简单的内存缓存
2013-07-19 11:06 11591. 首先,我们要做一个缓存数据类 这个数据类要有一个数据 ... -
Java OutOfMemory 解决
2013-07-19 10:18 837Eclipse中设置 -
String.format方法使用
2013-06-18 15:21 1918一.常规类型、字符类型和数值类型的格式说明符的语法如下:%[a ... -
JDK1.6连接SQL Server2008失败的原因
2011-07-29 15:05 10781. 需要下载最新sql server jdbc,从微软网站下 ... -
jar命令打包java带有包名的类文件
2011-07-13 09:40 1315jar cvfm JTool.jar jtool\ui\man ... -
ikvm转换jar文件成dll
2011-06-19 22:35 1747ikvmc -out:BasicFileOutput.dll ... -
jar命令打包java类文件
2011-06-19 22:33 1369jar cvfm BasicFileOutput.jar ma ... -
Java命令行编译自动生成包目录
2011-06-19 18:01 1395javac -d . BufferedInputFile.ja ... -
用命令行编译和执行带有包的java文件
2011-06-19 15:24 2788主要介绍java和javac命令的使用, 分带package和 ... -
FilenameFilter过滤目录下文件
2011-06-19 10:01 991编写一个实现FilenameFilter接口的类 publ ...
相关推荐
### Java 二进制文件的读写操作 在Java中,进行二进制文件的读写操作是非常常见的需求,尤其是在处理非文本类型的文件(如图片、音频或视频等)时。本文将详细介绍如何使用`FileInputStream`和`FileOutputStream`类...
本文将详细介绍一个Java程序中的功能模块——如何实现目录多文件上传,并利用Java IO流进行文件复制操作。该功能可以实现在用户选择一个目录后,自动扫描并上传该目录下的所有文件及其子文件夹,最终达到完整备份或...
在Java中,输入输出流是进行文件读写操作的基础,通过理解和掌握`java.io`包中的类体系结构,开发者可以更加灵活地处理各种文件操作。无论是简单的文件读写还是复杂的网络通信,都能够基于这些基础构建出高效的应用...
- **Classpath**: 是Java运行环境的一个重要概念,它指定了Java虚拟机(JVM)加载类和资源文件的路径。 - **Resource**: 在Java中通常指的是类路径下的文件,如配置文件、图片等非可执行代码的文件。 - **URL**: ...
### Java中的流与文件 #### 1. Java流概述 在Java编程中,流(Stream)是一种用于处理数据的抽象概念,它可以将数据看作是一系列连续的字节或字符流。流的概念非常重要,因为它提供了从文件、网络和其他来源读取数据...
本课程设计报告书——“Java课程设计报告书-学生版-1_I/O流与文件课程设计_”旨在帮助学生深入理解并掌握如何在Java中进行文件操作,通过实际的实验案例来学习文件对象和流类的应用。 一、Java I/O流概述 Java的I/O...
### Java读取SHP文件及DBF属性的关键技术解析 #### 概述 在地理信息系统(GIS)领域,Shapefile是一种常见的矢量数据格式,用于存储地理位置信息及相关属性数据。一个完整的Shapefile由多个文件组成,包括.shp、....
### Java实践-使用文件流操作文本文件 #### 知识点概述 1. **文件流的概念**:在Java中,文件流是用来处理文件输入输出的基本工具。它支持数据的读取与写入,对于实现数据持久化和进行输入输出操作至关重要。 2. *...
Java 读取 Excel 文件是许多开发任务中的常见需求,Apache POI 是一个广泛使用的开源库,专门用于处理 Microsoft Office 格式的文件,包括 Excel。在本案例中,提供的压缩包 "poi.zip" 包含了两个子文件:poi-bin-...
在Java中,处理文件的二进制读写是非常常见的操作。本篇文章将基于提供的代码示例,深入探讨如何使用`FileInputStream`和`FileOutputStream`进行二进制文件的读取和写入,并分析其中的关键点和技术细节。 #### 关键...
内存映射文件是一种特殊的文件处理方式,它能够将文件的一部分或者全部映射到内存地址空间中,从而允许程序像访问内存一样读写文件中的数据。这种方法特别适合处理大文件,因为它可以减少文件I/O操作,提高读写效率...
该类封装了50多个与文件相关的操作方法,简化了开发人员在文件操作方面的负担,无需手动处理文件流的关闭或连接池等问题,极大提高了代码的可读性和可维护性。 #### 二、核心功能 ##### 1. 文件路径解析 `...
在Java编程语言中,数据流通常指的是程序与外部设备(如磁盘文件)之间的数据交换过程。Java提供了强大的输入输出(I/O)系统来处理各种数据流,包括文件读写、网络通信等。Java的I/O系统主要由两大类构成:`...
1. **打开二进制文件**:使用`FileInputStream`类打开二进制文件,创建一个字节输入流。 2. **读取字节**:使用`read()`方法从输入流中读取字节。`read()`方法返回的是一个int值,范围在-1到255之间,-1表示文件末尾...
为了在 Java 中进行 HDF 文件的读写操作,可以使用 HDF Group 提供的 HDF5 Java 库。以下是一些关键步骤: 1. **引入 HDF5 Java 库**:首先需要将 HDF5 Java 库添加到项目中。 2. **创建 HDF5 文件**:使用 `H5.H5...
本文将详细介绍如何利用Java的流(Stream)技术实现文件的下载操作,并解释代码中的各个部分及其工作原理。 #### 二、知识点详解 ##### 2.1 文件路径与对象创建 在给定的示例代码中,首先定义了文件路径和文件名...
本教程主要针对IO流的概述进行复习,帮助学习者理解和掌握这一关键概念。 1. 字节流:字节流处理的是单个字节的数据,包括InputStream和OutputStream家族。InputStream用于读取数据,如 FileInputStream 用于读取...
- Java的IO流系统提供了读写文件、网络通信的能力。 - 流分为字节流和字符流,如FileInputStream/FOutputStream、FileReader/Writer等。 12. **集合框架** - List、Set和Map接口,以及其实现类如ArrayList、...
这个"Java文件操作案例源码.rar"压缩包提供了关于Java中IO流(Input/Output Stream)使用的实例代码,这对于我们深入理解和掌握Java文件处理非常有帮助。 1. **Java IO流概述**: Java IO流是一组类和接口,它们...