IO输入与输出1

原创 2011年01月23日 00:09:00

                                               IO输入与输出(一)

1.键盘被当做一种特殊的输入文件使用,I代表的是键盘,显示器被当做一种特殊的输出文件使用,即O代表的是显示器;
2.file类io包中唯一代表磁盘文件本身信息的的类,而不是文件中的内容,比如说文件的创建时间,而且定义了一些与平台无关的方法来操作文件;

3.file中定义了一些常用方法,不如查看文件名称,文件路径等等,下面有一个例子(判断某个文件是否存在,如果存在就将它删除,如果不存在就将它删除)。

package com.hjw;

import java.io.File;
import java.io.IOException;

public class FileTest {

 /**判断一个文件是否存在,如果存在就删除,
  * 如果不存在就创建此文件
  * @param args
  */
 public static void main(String[] args) {
          fileTest();
 }
    private static void fileTest(){
       File f=new File("aa//a.txt");
       if(f.exists()){
          f.delete();
       }else{
        try { 
          f.createNewFile();
   } catch (IOException e) {
    e.printStackTrace();
   }
     }
     System.out.println("fileName:"+f.getName());
         //得到文件的相对路径
     System.out.println("filepath:"+f.getPath());
     //得到绝对路径下的文件
     System.out.println("AbsoluteFile:"+f.getAbsoluteFile());
     //得到文件的上一级
     System.out.println("parent:"+f.getParent());
     //得到文件上一级的相对路径
     System.out.println("parentFile:"+f.getParentFile());
     System.out.println("AbsolutePath:"+f.getAbsolutePath());
     System.out.println(f.exists()? "exist":"not exist");
     System.out.println(f.canRead()? "read":"not read");
     System.out.println(f.canWrite()? "write":"not write");
     //判断f是否是一个目录
     System.out.println(f.isDirectory()? "directory":"not directory");
     System.out.println();
    }
}
4.java中有个RandomAccessFile类

a)RandomAccessFile类提供了众多的文件访问方法;

b)RandomAccessFile类支持随机访问方式,从指示器指示的当前位置开始;

c)RandomAccessFile类在读写等长记录格式的文件时有很大的优势;

d)RandomAccessFile类仅限于操作文件,不能访问其他的io设备,
e)RandomAccessFile类两种构造方法:
new RandomAccessFile("f","rw");//读写方式
new RandomAccessFile("f","r");//只读方式

例子:(通过RandomAccessFile类对文件进行读写操作)

public static void main(String[] args) {
  // 定义三条记录
  Employee e1 = new Employee("zhangsan", 23);
  Employee e2 = new Employee("lisi", 22);
  Employee e3 = new Employee("wangwu", 21);
  try {
   // 把内容通过randomAccessFile写入到文件中
   RandomAccessFile ra = new RandomAccessFile("employee.txt", "rw");
   ra.write(e1.getName().getBytes());
   ra.writeByte(e1.getAge());
   ra.write(e2.getName().getBytes());
   ra.writeByte(e2.getAge());
   ra.write(e3.getName().getBytes());
   ra.writeByte(e3.getAge());
   ra.close();
   // 把文件读出来
   byte[] bt = new byte[8];
   int len = 0;
   String strName = null;
   RandomAccessFile raf = new RandomAccessFile("employee.txt", "r");
   

   raf.skipBytes(9);
   len = raf.read(bt);
   strName = new String(bt, 0, len);
   System.out.println(strName + ":" + raf.read());

   raf.seek(0);
   len = raf.read(bt);
   strName = new String(bt, 0, len);
   System.out.println(strName + ":" + raf.read());

   raf.skipBytes(9);
   len = raf.read(bt);
   strName = new String(bt, 0, len);
   System.out.println(strName + ":" + raf.read());
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }

 }

51单片机IO口输入输出方式

传统51单片机IO接口只可以作为标准双向IO接口,如果用其来驱动LED只能用灌电流的方式或是用三极管外扩驱动电路。 灌电流方式:LED正极接VCC,负极接IO口。IO为高电平是LED两极电平相同,没...
  • zzwdkxx
  • zzwdkxx
  • 2012年09月06日 21:05
  • 14467

IO输入与输出(1)

今天开始学习张孝祥老师的视频教程-IO输入与输出,手上备有一本《JAVA语言程序设计(基础篇)》做为补充资料。IO                   File类File类是IO包中唯一代表磁盘文件本...
  • shichuyao
  • shichuyao
  • 2010年12月30日 17:44
  • 634

Java IO之简单输入输出

Java中的IO分为两个部分,以InputStream和Reader为基类的输入类,以OutputStream和Writer为基类的输出类。其中InputStream和OutputStream以字节为...
  • u011403655
  • u011403655
  • 2015年03月12日 19:41
  • 2930

JAVA输入输出(IO)之字符流

上一篇《JAVA输入输出(IO)之字节流》介绍了JAVA字节输入输出流的一些用法,字节流一般是用于读写二进制数据的,当我们要读些字符数据的时候,如文本文件,就显得有些麻烦。所以JAVA还提供了专门用于...
  • jianggujin
  • jianggujin
  • 2015年12月30日 11:10
  • 2296

IO/输入与输出

IO流:对二进制格式数据进行读写操作的流(字节流):    两个抽象基类:InputStream和OutputStream 仅仅读写单个字节和字节数组,要想读写字符串、数值等类型就要到他们的子类。对U...
  • yeshenyuege
  • yeshenyuege
  • 2011年03月15日 22:52
  • 401

IO输入与输出

File类:  1.File类是IO包中惟一代表磁盘文件本身信息的类,而不是文件中的内容。  2.File类定义了一些与平台无关的方法来操纵文件。  3.Java中的目录被当作一种特殊的文件使用,li...
  • suifeng01
  • suifeng01
  • 2011年01月06日 18:29
  • 844

Java.io包中的流的输入输出详解1(字节流)

由于流在java中的重要性,和本身自己在流这方面存在混乱的原因。我将会对流进行一次很清晰的总结和记录下来我的学习过程。第一次开始了发表博客,我很高兴可以讲自己的理解和大家进行分享。有不好和不对的地方请...
  • zhbitxhd
  • zhbitxhd
  • 2012年11月20日 23:09
  • 2695

STM32的IO输入与输出

详细研究推挽输出和开漏输出,涵盖各种输入输出
  • qq_37829176
  • qq_37829176
  • 2017年03月09日 15:14
  • 637

黑马程序员_IO输入与输出(1)

------- android培训、java培训、期待与您交流! ---------- 1、IO(Input Output)流 IO流用来处理设备之间的数据传输。 Java对数据的操作时...
  • Sunny_365
  • Sunny_365
  • 2013年03月30日 23:58
  • 368

Java输入输出(IO)和流的基本概念

我们对文件的概念已经非常熟悉了,比如常见的 Word 文档、txt 文件、源文件等。文件是数据源的一种,最主要的作用是保存数据。 在《载入内存,让程序运行起来》一文中我们提到,所有的文件(保存在...
  • freestylewill
  • freestylewill
  • 2016年07月11日 19:42
  • 1138
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IO输入与输出1
举报原因:
原因补充:

(最多只允许输入30个字)