`
ccn1010
  • 浏览: 14834 次
  • 性别: Icon_minigender_1
  • 来自: 邢台
最近访客 更多访客>>
社区版块
存档分类
最新评论

JAVA.IO的学习日记

阅读更多


1.JAVA中的File类是IO包中唯一代表文件本身信息的类,不是文件中的内容,可以利用File类中的方法对文件进行创建、删除、获取文件信息等操作。其中createNewFile()方法会抛出一个异常,需要用try和catch语句将其包裹起来。


2.RandomAccessFile 提供的方法可以从文件的任意位置对文件进行访问,在读取等长记录文件的时候可以节省很多时间,该类只能操作文件,不能访问设备;该类有两种构造方 法,new RandomAccessFile(f,"rw"),f为需要访问的文件名称,r和w分别为以读或者写方式打开;利用skipBytes(int i)方法可以跳转i个字节;写入整形数据时用writeInt()方法;字符串调用.trim()方法可以去除字符串中的空格;想文件中写入中文字符时, 用writeChars()方法,读中文字符时用readChar()方法;


3.InputStream类的int read()方法可以一次读取一个字节的内容,当返回值为-1时表示读取结束;int read(byte[]b)方法一次读取一个字节数组的内容,返回值表示实际读取到的字节长度;int read(byte[] b,int off,int len)方法可以从输入流中读取len个长度的字节数据从下标off开始依次存放到字节数组b中,返回值表示读取到的字节长度;包装类中long skip(long n)方法可以跳过n个字节的长度,返回的值是跳过的长度;int available()方法可以检查流中有无数据,返回值为当前流中的可读字节数;当程序要求实时读取文件中的数据时,可创建一个线程调用read方法, 这样可节省CPU资源。void mark(int readlimit)用于包装类中,用于标记当前位置;void reset()用于让指针返回mark方法设定的位置;JVM只会回收程序产生的垃圾,不会回收程序运行时系统产生的一些资源。所以需要调 用.close()方法从程序内部关闭因运行而使系统产生的资源。InputStream类的输入流是对于程序而言的,也就是从外部向程序中输入。


4.OutputStream类是相对于外部文件的输出流,该类的void write()方法可以向外部文件写入数据;void flush()方法可以将内存缓冲区中的数据清空并立即写入到外部设备中;


5. FileInputStream FileOutputStream

       FileInputStream FileOutputStream 类分别用来创建磁盘文件的输入流和输出流对象,通过它们的构造函数来指定文件路径和文件名。

       创建 FileInputStream 实例对象时,指定的文件应当是存在和可读的。创建 FileOutputStream 实例对象时,如果指定的文件已经存在,这个文件中的原来内容将被覆盖清除。

       对同一个磁盘文件创建 FileInputStream 对象的两种方式:

   1)、   FileInputStream inOne = new FileInputStream(“hello.test”);

   2)、   File f = new File(“hello.test”);

FileInputStream inTwo = new FileInputStream(f);

       创建 FileOutputStream 实例对象时,可以指定还不存在的文件名,不能指定一个已被其他程序打开的文件。

       此处的输入与输出是相对程序而言,而非相对文件而言。

       要将 A 文件的内容写入 B 文件,在程序代码中,是用输出类对象,还是用输入类对象来连接 A 文件并完成对 A 文件的操作呢?

 

6. Reader Writer

       Reader Writer 是所有字符流类的抽象基类,用于简化对字符串的输入输出编程,即用于读写文本数据。

       二进制文件和文本文件的区别。(文本文件是二进制文件的特例,如果一个文件专用于存储文本字符而不包含字符之外的其他数据,就是文本文件,其它的都是二进制文件)

       程序中的方法区别:

FileOutputStream out = new FileOutputStream("hello.txt");

out.write("www.it315.org".getBytes());

FileOutputStream 类中的 write() 方法将自动调用 flush() 方法刷新内存缓冲区,可以不用 close() 方法,即可向文件写入数据。并且输入的字符要用 getBytes() 方法转换成字节。

FileWriter out = new FileWriter("hello2.txt");

out.write("www.it315.org");

out.close();

FileWriter 中必须用 close() 方法清空内存缓冲区以写入数据, write() 方法可以直接写入字符。


7.PipedInputStream类和PipedOutputStream类用于在两个线程之间建立管道通信;一个线程可以使用PipedInputStream类从另一个线程使用的PipedOutputStream类中读取数据;

分享到:
评论

相关推荐

    简单的JAVA日记本程序源代码

    3. IO流:用于读取和保存日记内容,JAVA的FileInputStream和FileOutputStream被用来进行文件的读写操作。 4. String类:在处理日记文本时,JAVA的String类提供了丰富的字符串操作方法。 二、图形用户界面(GUI) 1....

    java编写私密日记本

    2. **文件操作**:在Java中,文件操作主要依赖于`java.io`包中的类,如`File`、`BufferedReader`、`BufferedWriter`等。这些类可以帮助程序读取和写入文件,实现日记的保存和加载。`File`类用于处理文件路径,而`...

    一个简单的java日记本

    Java日记本程序是一种基于Java编程语言开发的个人日记应用程序,旨在提供一个用户友好的界面,让用户可以方便地记录、查看和编辑他们的日记条目。这个程序不仅具备基本的文字编辑功能,还具有一定的安全性,通过密码...

    java进阶学习日记

    【Java进阶学习日记】是一份全面且深入的Java学习资料,旨在帮助已经掌握基础的开发者进一步提升技能,同时也适合正在寻找工作的Java学习者作为面试准备。这份学习笔记涵盖了广泛的Java相关主题,从底层的计算机操作...

    java记事本日记

    这个名为"java记事本日记"的小程序不仅是一个简单的文本编辑器,还集成了系统操作如关机、开机、重启和注销功能,这对于学习Java控制操作系统的能力是很有帮助的。 首先,我们来看一下这个程序的基础知识点: 1. *...

    Java日记本课程设计

    这个Java日记本课程设计项目为初学者提供了实践经验,涵盖了Java编程的基础知识和软件开发的基本流程,是学习和巩固Java技能的一个良好平台。通过这样的项目,学生可以提升自己的编程能力,更好地理解和运用课堂上学...

    Java 程序 日记本

    Java程序日记本是一个用于记录和学习Java编程过程中遇到的问题、解决方案以及心得的资源集合。它可能包含了一系列关于Java编程的笔记、代码示例、调试技巧和项目实践等内容,旨在帮助开发者提升技能,解决实际问题。...

    mandyer.github.io:mandyer的博客

    【标签】:虽然没有给出具体的标签,但我们可以假设这个博客可能涉及的标签有“GitHub”,“个人博客”,“开源”,“编程”,“Web开发”,“技术文章”,“开发者日记”,“学习资源”等。 【文件名称列表】:...

    JAVA日历记事本,可以查看日历,并能在当前日期下写日记,能保存,能阅读

    这个简单的日历记事本项目虽然功能不复杂,但它涵盖了Java GUI编程的许多基础概念和技术,对于学习和理解Java桌面应用开发有很好的实践价值。通过这样的项目,开发者可以深入理解Java的UI设计、文件操作以及面向对象...

    基于JavaSwing开发日记本程序

    Java提供了java.io包,包含File、BufferedReader和BufferedWriter等类,用于读写文件。日记数据可以以纯文本或特定格式(如XML或JSON)存储。 5. **菜单栏和快捷键**:Swing的JMenuBar和JMenuItem可以创建菜单栏,...

    6-学号-姓名--IO程序设计-日记本.docx

    "IO 程序设计-日记本实验报告" 《面向对象程序设计》实验报告中,要求编写一个日记本功能的程序,使用字节流将日记的具体信息记录在本地的 txt 文件中。当用户输入日记的特定内容后,会将输入的内容保存至本地的 ...

    用JAVA写的一个写字板小程序

    这个小程序对于学习Java基础和GUI编程来说是一个很好的实践项目,它涵盖了从基本的编程概念到更高级的用户界面设计和文件操作等多个方面。同时,通过实现这样的程序,开发者还可以了解软件工程中的模块化设计、代码...

    Java实现超级实用的日记本

    这通常通过`java.io.File`类和相关的输入/输出流实现,确保日记数据的持久化存储。 总之,这个Java实现的日记本程序综合运用了Java Swing GUI组件、事件处理、日期和时间处理等技术,提供了一个功能完善的日记管理...

    基于java的日记本源码.zip

    通过阅读和分析Java源码,可以帮助学习者深入理解Java编程语言的特性和最佳实践,提高编程技能,解决实际问题。同时,Java源码也是开发人员进行软件开发的基础,可以用于构建各种类型的应用程序和系统。 这个Java...

    javachengxusheji.zip_源码

    日记数据可能被存储为文本文件,使用`java.io`包中的File类和BufferedReader/BufferedWriter进行读写操作。如果使用了持久化存储,如数据库,那么可能会涉及JDBC(Java Database Connectivity)。 “导入已写文件...

    JavaSpringBoot个人日记本系统

    1. **Java基础**:Java是系统的编程语言基础,包括面向对象编程、异常处理、集合框架(如List、Set、Map)、多线程、IO流等。理解并熟练运用这些基础知识是开发的前提。 2. **SpringBoot框架**:SpringBoot简化了...

    java安卓仿微信聊天软件源码-ztd328423.github.io:个人博客

    这是一份详细的RxJava学习攻略 & 指南 Android 复习资料汇总 Android 日记 《剑指offer》Java版代码实现 android资料总结 技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计、Java、Python、...

    java毕业设计&课设-小熊日记.zip

    1. **Java基础**:作为项目的基础,Java语言的基本语法、面向对象编程概念、异常处理、集合框架(如List、Set、Map)以及IO流等是必不可少的知识点。小熊日记项目可能会涉及这些基础内容的运用。 2. **MVC设计模式*...

    Java上机日记

    "Java上机日记"可能指的是学习Java编程的实践记录,然而,给定的文件主要内容却是大学英语学生的课外听写作业,包括对话和短文听力理解题目。这些内容属于英语学习的范畴,而非Java编程的知识点。 如果您需要关于...

    毕设项目,同步用的.rar

    2. Java 实现日记软件 做一个简单的 Java 日记软件,可以实现用户的注册、登录以及对日记的各种操作。同学们可以用自己做出的日记软件来记录自己的生活。涉及了包括 Swing 界面编程、文件和IO流操作、JDOM 解析 XML...

Global site tag (gtag.js) - Google Analytics