字符流

package jd_1;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class jd_1 {

/**
  * 字符流
  *
  * @param args
  */
 public static void main(String[] args) {
  // 创建BufferedReader用于读取文件
  BufferedReader reader = null;
  // 创建BufferedWriter用于写入文件
  BufferedWriter writer = null;
  // 创建FileReader用于保存读入的路径
  FileReader fis = null;
  try {
   fis = new FileReader("F:\\java IO\\简答copy\\source.txt");
  } catch (FileNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  // 创建FileWriter用于保存写入的路径
  FileWriter fw = null;
  try {
   fw = new FileWriter("F:\\java IO\\简答copy\\targetcopy.txt");
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  reader = new BufferedReader(fis);
  writer = new BufferedWriter(fw);
  String line = null;
  // 读取的是字符串
  try {
   // while ((line = reader.readLine()) != null) {
   // try {
   // Thread.sleep(500);
   // } catch (InterruptedException e) {
   // // TODO Auto-generated catch block
   // e.printStackTrace();
   // }
   // writer.write(line);
   // }
   // 通过数组作为中转站
   char[] c = new char[1024];
   StringBuffer buffer = new StringBuffer();
   int legin = fis.read(c);
   while (legin != -1) {
    buffer.append(c);
    legin = fis.read();
    fw.write(c);
   }
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } finally {
   System.err.println("copy成功");
   if (reader != null) {
    try {
     reader.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
   if (writer != null) {
    try {
     writer.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }
}

字节流

public class copy {
 public static void main(String[] args) {
  // 复制前
  FileInputStream file = null;
  // 复制后
  FileOutputStream file1 = null;
  try {
   // 复制前的路径
   file = new FileInputStream("F:\\java IO\\新建文本文档.txt");
   // 复制后的路径
   file1 = new FileOutputStream("F:\\java IO\\copy.txt");
  } catch (FileNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  // 创建一个字符数组作为中转站
  byte[] Words = new byte[1024];
  // 记录数组的长度
  int len;
  try {
   while ((len = file.read(Words)) != -1) {
    file1.write(Words, 0, Words.length);
    System.out.println("copy成功");
   }
  } catch (IOException e) {

e.printStackTrace();
  } finally {
   if (file != null) {
    try {
     file.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
   if (file1 != null) {
    try {
     file1.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }
}

二进制流

package bdqn4;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * 二进制读取
 *
 * @author Administrator
 *
 */
public class Text {
 public static void main(String[] args) {
  // 创建流
  // 实现读写操作
  // 关闭流

DataInputStream dis = null;
  DataOutputStream dos = null;

FileInputStream fis = null;
  try {
   fis = new FileInputStream("F:\\java IO\\原图片.jpg");
  } catch (FileNotFoundException e1) {
   // TODO Auto-generated catch block
   e1.printStackTrace();
  }
  FileOutputStream fos = null;
  try {
   fos = new FileOutputStream("F:\\java IO\\copy图片\\copy.jpg");
  } catch (FileNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  dis = new DataInputStream(fis);
  dos = new DataOutputStream(fos);
  int temp;
  try {
   while ((temp = dis.read()) != -1) {
    dos.write(temp);
   }
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } finally {
   System.err.println("转移成功");
   if (dis != null) {
    try {
     dis.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
   if (dos != null) {
    try {
     dos.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }
}

判断IO的的各种属性及其方法

package bdqn1;

import java.io.File;
import java.io.IOException;
import java.util.Scanner;

public class text {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  // 实例化对象指点判断路径
  File file = new File("F:\\java IO\\新建文本文档.txt");
  // 判断.tet是否存在
  if (file.exists()) {
   System.out.println("当前文件存在");
   System.out.println("文件的完整路径" + file.getAbsolutePath());
   System.out.println("文件名" + file.getName());
   System.out.println("文件的相对路径" + file.getPath());
   System.out.println("文件的上一级目录" + file.getParent());
   System.out.println("文件的长度" + file.length());
   if (file.isDirectory()) {
    System.out.println("当前是文件夹");
   } else {
    System.out.println("当前是不是文件夹");
    System.err.println("请输入1删除");
    int number = input.nextInt();
    if (number == 1) {
     boolean bool = file.delete();
     if (bool) {
      System.out.println("删除成功");
     }
    }
   }
  } else {
   System.out.println("当前文件不存在");
   try {
    boolean bool = file.createNewFile();
    if (bool) {
     System.out.println("创建成功");
    }
   } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
 }
}

java中的IO 的示例的更多相关文章

  1. Java中的IO流(六)

    上一篇<Java中的IO流(五)>把流中的打印流PrintStream,PrintWriter,序列流SequenceInputStream以及结合之前所记录的知识点完成了文件的切割与文件 ...

  2. java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET

    java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET 亲,“社区之星”已经一周岁了!      社区福利快来领取免费参加MDCC大会机会哦    Tag功能介绍—我们 ...

  3. java中的IO操作总结

    一.InputStream重用技巧(利用ByteArrayOutputStream) 对同一个InputStream对象进行使用多次. 比如,客户端从服务器获取数据 ,利用HttpURLConnect ...

  4. java中的IO流

    Java中的IO流 在之前的时候我已经接触过C#中的IO流,也就是说集中数据固化的方式之一,那么我们今天来说一下java中的IO流. 首先,我们学习IO流就是要对文件或目录进行一系列的操作,那么怎样操 ...

  5. Java中的IO流总结

    Java中的IO流总结 1. 流的继承关系,以及字节流和字符流. 2. 节点流FileOutputStream和FileInputStream和处理流BufferedInputStream和Buffe ...

  6. Java 中的 IO 与 socket 编程 [ 复习 ]

    一.Unix IO 与 IPC Unix IO:Open-Read or Write-Close IPC:open socket - receive and send to socket - clos ...

  7. 深入理解Java中的IO

    深入理解Java中的IO 引言:     对程序语言的设计者来说,创建一个好的输入/输出(I/O)系统是一项艰难的任务 < Thinking in Java >   本文的目录视图如下: ...

  8. Java中的IO流大体介绍

    由于Java中的IO流是在是知识点繁多,所以我大约花了1周的时间将其整理起来.但是整理起来后并不是将完事了,我还是要分字节流和字符流来讲述.然后字节流和字符流中还有是否带有缓冲流. 讲述完IO流后我将 ...

  9. Java中的IO流,Input和Output的用法,字节流和字符流的区别

    Java中的IO流:就是内存与设备之间的输入和输出操作就成为IO操作,也就是IO流.内存中的数据持久化到设备上-------->输出(Output).把 硬盘上的数据读取到内存中,这种操作 成为 ...

随机推荐

  1. Java中获取文件路径

    Java中获取文件路径 1.实例说明 (1)得到 ClassPath的绝对URI路径 Thread.currentThread().getContextClassLoader().getResourc ...

  2. Linux查询一台机器的IP地址和其对应的域名

    Linux查询一台机器的IP地址和其对应的域名 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ nslookup > 127.0.0.1 Server: ...

  3. Linux下挂载新硬盘方法

     Linux的硬盘识别在/dev/下建立相应的设备文件.如 sda 表示第一块SCSI硬盘 hda 表示第一块IDE硬盘(即连接在第一个IDE接口的Master口上) scd0 表示第一个USB光 ...

  4. BitMap位图与海量数据的理解

    1. Bit Map算法简介 来自于<编程珠玑>.所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空 ...

  5. 简述“类(class)”,“类库(class library)”,“包(package)”,“jar文件”这四个概念间的关系

    (1)类(class)实际上是对某种类型的对象定义变量和方法的原型,它表示对现实生活中的一类具有共同特征的事物的抽象. (2)为了更好地组织类,java提供了包机制.包(package)是类的容器,用 ...

  6. [BZOJ1003] [ZJOI2006] 物流运输trans (最短路 & dp)

    Description 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格 ...

  7. github远程仓库初始化配置

    github远程仓库的提交一般是通过shell进行,windows下有Git Bash工具(https://git-for-windows.github.io/) 由于本地Git仓库和GitHub仓库 ...

  8. Java项目转换成Web项目

    阐述:有时候我们在Eclipse中导入一个web项目,发现导入到项目中后变成一个Java项目,这让人很蛋疼.本篇主要讲述怎样将这个本该为web项目的Java项目变身回去,以及一些在导入过程中遇到的一些 ...

  9. WordPress制作一个首字母排序的标签页面

    很早就想制作这样一个页面了,废话不多说, 先看看效果:传送门 在网上找了很多的代码,试了很久,修改了一些代码,最终就达到了现在的效果. 实现方法:(里面增加了缓存功能,打开页面更快,对数据进行了缓存, ...

  10. map/vector erase

    问题核心:erase之后迭代器是否失效 vector调用erase之后,该迭代器之后的迭代器都失效: map调用erase之后,其他迭代器并不会失效. vector<int> vecDat ...