- 浏览: 26806 次
- 性别:
- 来自: 北京
最新评论
1 File类
File 类封装了对用户机器的文件系统进行操作的功能。例如,可以用 File 类获得文件上次修改的时间移动,或者对文件进行删除、重命名。换句话说,流类关注的是文件内容,而File 类关注的是文件在磁盘上的存储。
File 类的主要方法有: getName(),getCanonicalFile(),lastModified(),isDerector(),isFile(),getPath()等;
File 类与 FileInputStream 类的区别:
流类关注的是文件内容,而 File 类关注的是文件在磁盘上的存储。
2 FileInputStream 类
FileInputStream 类介绍:
以字节为单位(非unicode)的流处理。字节序列即:二进制数据。与编码无关,不存在乱码问题。因为汉字是2字节,所以没法直接读汉字,要用InputStreamReader转成字符流或者直接用FileReader。
FileInputStream 类与 FileReader 类的区别:
FileInputStream :以字节流方式读取; FileReader :把文件转换为字符流读入;
InputStream提供的是字节流的读取,而非文本读取,这是和Reader类的根本区别。
用Reader读取出来的是char数组或者String ,使用InputStream读取出来的是byte数组。
InputStreamReader ,它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如 GBK 等。
FileReader 与 InputStreamReader 涉及编码转换 ( 指定编码方式或者采用 os 默认编码 ) ,可能在不同的平台上出现乱码现象!而 FileInputStream 以二进制方式处理,不会出现乱码现象 .
自己的领会:
如果处理纯文本文件,建议使用 FileReader ,因为更方便,也更适合阅读;但是要注意编码问题。
其他情况(处理非纯文本文件),FileInputStream是唯一的选择;FileInputStream是进Socket通讯时会用到很多,如将文件流是Stream的方式传向服务器!
3 FileReader 类
FileReader 类介绍:
InputStreamReader 类的子类,所有方法都从父类 InputStreamReader 中继承而来;
InputStreamReader 类的区别:
自己的领会:
该类与它的父类 InputStreamReader 的主要不同在于构造函数,主要区别也就在于构造函数!从InputStreamReader 的构造函数中看到,参数为 InputStream 和编码方式,可以看出,当要指定编码方式时,必须使用 InputStreamReader 类;而 FileReader 构造函数的参数与 FileInputStream 同,为 File 对象或表示 path 的 String ,可以看出,当要根据 File 对象或者 String 读取一个文件时,用 FileReader ;我想 FileReader 子类的作用也就在于这个小分工吧。
4 InputStreamReader 类
以文本格式输入 / 输出,可以指定编码格式;
主要方法:
getEncoding (),read();
5 BufferedReader 类
BufferedReader 由Reader类扩展而来,提供通用的缓冲方式文本读取,而且提供了很实用的readLine,读取分行文本很适合,BufferedReader是针对Reader的,不直接针对文件,也不是只针对文件读取。构造函数的参数都含有reader
总结以上内容,得出比较好的规范用法:
File 类封装了对用户机器的文件系统进行操作的功能。例如,可以用 File 类获得文件上次修改的时间移动,或者对文件进行删除、重命名。换句话说,流类关注的是文件内容,而File 类关注的是文件在磁盘上的存储。
File 类的主要方法有: getName(),getCanonicalFile(),lastModified(),isDerector(),isFile(),getPath()等;
File 类与 FileInputStream 类的区别:
流类关注的是文件内容,而 File 类关注的是文件在磁盘上的存储。
2 FileInputStream 类
FileInputStream 类介绍:
以字节为单位(非unicode)的流处理。字节序列即:二进制数据。与编码无关,不存在乱码问题。因为汉字是2字节,所以没法直接读汉字,要用InputStreamReader转成字符流或者直接用FileReader。
FileInputStream 类与 FileReader 类的区别:
FileInputStream :以字节流方式读取; FileReader :把文件转换为字符流读入;
InputStream提供的是字节流的读取,而非文本读取,这是和Reader类的根本区别。
用Reader读取出来的是char数组或者String ,使用InputStream读取出来的是byte数组。
InputStreamReader ,它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如 GBK 等。
FileReader 与 InputStreamReader 涉及编码转换 ( 指定编码方式或者采用 os 默认编码 ) ,可能在不同的平台上出现乱码现象!而 FileInputStream 以二进制方式处理,不会出现乱码现象 .
自己的领会:
如果处理纯文本文件,建议使用 FileReader ,因为更方便,也更适合阅读;但是要注意编码问题。
其他情况(处理非纯文本文件),FileInputStream是唯一的选择;FileInputStream是进Socket通讯时会用到很多,如将文件流是Stream的方式传向服务器!
3 FileReader 类
FileReader 类介绍:
InputStreamReader 类的子类,所有方法都从父类 InputStreamReader 中继承而来;
InputStreamReader 类的区别:
自己的领会:
该类与它的父类 InputStreamReader 的主要不同在于构造函数,主要区别也就在于构造函数!从InputStreamReader 的构造函数中看到,参数为 InputStream 和编码方式,可以看出,当要指定编码方式时,必须使用 InputStreamReader 类;而 FileReader 构造函数的参数与 FileInputStream 同,为 File 对象或表示 path 的 String ,可以看出,当要根据 File 对象或者 String 读取一个文件时,用 FileReader ;我想 FileReader 子类的作用也就在于这个小分工吧。
4 InputStreamReader 类
以文本格式输入 / 输出,可以指定编码格式;
主要方法:
getEncoding (),read();
5 BufferedReader 类
BufferedReader 由Reader类扩展而来,提供通用的缓冲方式文本读取,而且提供了很实用的readLine,读取分行文本很适合,BufferedReader是针对Reader的,不直接针对文件,也不是只针对文件读取。构造函数的参数都含有reader
总结以上内容,得出比较好的规范用法:
File file = new File ("hello.txt"); FileInputStream in=new FileInputStream(file);
File file = new File ("hello.txt"); FileInputStream in=new FileInputStream(file); InputStreamReader inReader=new InputStreamReader(in); BufferedReader bufReader=new BufferedReader(inReader);
File file = new File ("hello.txt"); FileReader fileReader=new FileReader(file); BufferedReader bufReader=new BufferedReader(fileReader);
发表评论
-
deee
2011-12-14 01:44 953string htmlcode = "<H ... -
布局管理器
2011-06-24 11:33 711布局管理器是个与特定组件相关联的Java对象,它大多数是背景组 ... -
内部类
2011-06-24 10:27 593内部类 内部类对外部的类有一张特殊的通行证,能够自由存取它的内 ... -
集合与泛型
2011-06-23 14:44 668ArrayList TreeSet 以有序状 ... -
PrintWriter
2011-06-22 21:53 1057PrintWriter可能比BufferedWriter更高级 ... -
网络与线程
2011-06-22 21:26 620常见的TCP端口号 FTP 20 T ... -
序列化和文件的输入输出
2011-06-22 10:47 734//序列化 FileOutputStream fileStr ... -
异常处理
2011-06-21 21:41 550编译器不会注意RuntimeException类型的异常。以为 ... -
HashMap中的泛型
2011-06-21 21:09 1313HashMap<String,Integer> h ... -
逐字符的读文件
2011-06-21 17:23 783BufferedReader reader = new Buf ... -
数字与静态
2011-06-20 21:26 560静态方法不能调用非静态的变量(方法内定义的变量当然可以用,这里 ... -
构造器与垃圾收集器
2011-06-20 17:16 577对象(包括实例变量)的生存空间:堆 方法调用及变量(局部变量) ... -
super和this
2011-06-20 16:50 595super和this的异同: 1)super(参数):调用基 ... -
接口与抽象类
2011-06-20 15:50 607方法中有一个是抽象的,该类就必须是抽象类 继承树结构下的第一 ... -
继承与多态
2011-06-20 14:55 732继承:extends java虚拟机 ... -
编程方法
2011-06-19 16:03 536先写测试码,再写程序。 因为: 1 思索与编写测试用的程序代码 ... -
对象的行为
2011-06-19 15:48 533Java是通过值传递的,也就是说通过拷贝传递 封装:将实例变 ... -
认识变量
2011-06-19 15:21 594变量有两种:primitive主数据类型和引用 Java pr ...
相关推荐
java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序java读文件内容小程序...
在Java编程语言中,将二进制文件转换为文本文档通常涉及到字符编码的理解和处理。二进制文件可以包含任何类型的数据,如图像、音频、视频或纯文本,但以非可读格式存储。而文本文档通常使用特定的字符编码(如ASCII...
java实现文字转语音文件和朗读功能,还要下载jacob-1.17-M2.rar文件。将jacob.jar导入java项目中,64bit就将jacob-1.18-x64.dll放入System32目录下;32bit就将jacob-1.18-x86.dll放入System32目录下。
三、NIO读文件的优势 1. 高效:NIO使用缓冲区进行数据传输,减少了系统调用,提高了性能。 2. 非阻塞:在等待数据时,线程可以做其他工作,避免了阻塞I/O可能导致的资源浪费。 3. 多通道:通过选择器,可以同时监控...
Java读取大文件的处理 Java读取大文件的处理是Java编程中的一项重要技术,特别是在处理大文件时需要注意性能和响应速度。下面我们将对Java读取大文件的处理技术进行详细的介绍。 标题解释 Java读取大文件的处理是...
在这个场景下,"Java转Pas文件官方工具"是为了帮助开发者将Java源代码转换成Delphi可读的PAS文件。 Java源代码文件通常以`.java`为扩展名,经过编译后生成`.class`文件,这些类文件可以被Java虚拟机执行。然而,...
在Java开发中,有时我们需要将PDF文件的内容转换为字符串(String)形式,以便于处理或存储。这个过程通常涉及到PDF的解析和文本提取。在这个场景下,我们可以利用Apache的PDFBox库来实现这一功能,而PDFBox库依赖于...
java多进程并发 读文件 测试代码,适合初学并发控制 的同学
在Java编程语言中,文件的读写操作是日常开发中不可或缺的部分。无论是处理用户数据、配置文件,还是进行数据持久化,都需要用到文件的读写功能。本篇将详细介绍如何在Java中实现文件的读写操作,并通过一个小例子...
本文将围绕".class文件反编译工具"这一主题,详细讲解如何将`.class`文件转换为可读的`.java`源文件,并重点介绍解压后的jd-gui-windows-1.4.0工具的使用方法。 首先,了解`.class`文件结构至关重要。每个`.class`...
根据给定的文件信息,我们可以总结出一系列关于Java中读取文件的方法,这些方法涵盖了不同层次的数据读取,包括字节、字符以及行级别的读取。以下是对这些知识点的详细阐述: ### Java读取文件方法大全:读取File流...
JAVA处理文件、压缩、解压文件、写文件、读文件,所有文件操作一应俱全
java pcm数据文件
本教程将深入讲解如何使用Java读取JSON文件,并将其内容转化为Map以便进行取值操作。 首先,我们需要引入处理JSON的库。Java标准库并不直接支持JSON操作,所以我们通常会使用第三方库,如`org.json`或`...
Java Properties文件是Java编程语言中用于存储配置信息的文本文件,通常以.key=value的形式存储键值对。这种文件格式在Java应用中广泛用于保存应用程序的配置参数、国际化字符串或者数据库连接信息等。读取...
java读TXT文件,设置好路径和修改一下文件名就可以了
在这种情况下,Java开发者可以创建一个Web服务,该服务可以接收文件数据并进行传输。 Java调用Windows COM组件是一个相对复杂的过程,因为Java本身并不直接支持COM(Component Object Model)。这就是JACOB(Java ...
在Java编程环境中,读取Excel文件是一项常见的任务,特别是在数据处理和分析的场景下。这里我们将探讨如何使用Java实现这一功能,重点是介绍压缩包中的`jxl.jar`库,这是一个用于读写Excel文件的第三方库。 首先,...
这些工具能够解析.class文件,并尽可能地将其转换回可读的.java源代码。例如,JD-GUI是一个直观的图形界面工具,可以直接打开.class文件并显示反编译出的源代码。 在反编译过程中,我们需要注意以下几点: 1. 反...
这篇博客“Java写文件读文件写图片到数据库读图片出数据库”主要探讨了如何利用Java来处理文件与数据库之间的交互,尤其是涉及图片这种二进制数据的存储和检索。下面将详细解释这个过程。 首先,Java提供了多种API...