import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException; public class Iotetst { private String fileName="ioTest.txt";
private String basePath="D:/TestFile";
private String writeFileName="write.txt";
private String charset="gbk"; public static void main(String[] args) {
Iotetst iotest = new Iotetst();
//测试InputStreamReader
//iotest.readFile(); //测试BufferedReader
// iotest.buff(); //测试写OutputStreamWrite
// iotest.writeFile(); // 测试BufferedWriter
iotest.buffw();
} /**
* read
*/
public void readFile(){
String AllPath=basePath+File.separatorChar+fileName;
System.out.println(AllPath);
try {
//读取字节转换成字符
FileInputStream fileInputStream = new FileInputStream(new File(AllPath));
InputStreamReader streamReader = new InputStreamReader(fileInputStream,charset); //
StringBuffer sb=new StringBuffer();
char[] buff=new char[1024];
int count=0; try {
while((count=streamReader.read(buff))!=-1){ sb.append(buff,0,count);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
System.out.println(buff);
streamReader.close(); } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} } catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} //BufferedReader @SuppressWarnings("resource")
public void buff(){ String AllPath=basePath+File.separatorChar+fileName;
try {
FileInputStream inputStream = new FileInputStream(new File(AllPath)); BufferedReader bufferedReader= new BufferedReader(new InputStreamReader(inputStream, charset)); String sb ; while((sb=bufferedReader.readLine())!=null){ System.out.println(sb);
} } catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} /**
* write
*/
public void writeFile(){
String writeToPath=basePath+File.separatorChar+writeFileName;
try { FileOutputStream fileOutputStream = new FileOutputStream(new File(writeToPath)); OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream,charset); outputStreamWriter.write("i love you and i wait for you and i miss you ! where are you?");
outputStreamWriter.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public void buffw(){
String writeToPath=basePath+File.separatorChar+writeFileName;
try{
FileOutputStream fileOutputStream = new FileOutputStream(new File(writeToPath)); OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream); BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter); bufferedWriter.write("中式敌众我寡实打实大啊啊奥术大师阿斯达奥术大师阿斯达");
bufferedWriter.close();
}catch(Exception e){
e.printStackTrace();
}
} }

io流对数据的读写的更多相关文章

  1. 八: IO流,数据的读写传输

    IO流概括图: IO流的分类:  按流: 输入流(InputStream和Reader):从硬盘或者别的地方读入内存 输出流(OutputStream和Writer):从内存里向硬盘或别的地方输出 按 ...

  2. C++ IO流_数据的旅行之路

    1. 前言 程序中的数据总是在流动着,既然是流动就会有方向.数据从程序的外部流到程序内部,称为输入:数据从程序内部流到外部称为输出. C++提供有相应的API实现程序和外部数据之间的交互,统称这类AP ...

  3. java IO流文件的读写具体实例(转载)

    引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能 ...

  4. java写文件读写操作(IO流,字节流)

    package copyfile; import java.io.*; public class copy { public static void main(String[] args) throw ...

  5. JavaEE基础(二十)/IO流

    1.IO流(IO流概述及其分类) 1.概念 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 流按流向分为两种:输入流,输出流. 流按操作类型分 ...

  6. Java API —— IO流( FileInputStream & FileOutputStream & BufferedInputStream & BufferedOutputStream )

    1.IO流概述 · IO流用来处理设备之间的数据传输        · 上传文件和下载文件        · Java对数据的操作是通过流的方式 · Java用于操作流的对象都在IO包中   2.IO ...

  7. day20<IO流>

    IO流(IO流概述及其分类) IO流(FileInputStream) IO流(read()方法返回值为什么是int) IO流(FileOutputStream) IO流(FileOutputStre ...

  8. Java IO流及应用(一)

    IO流 IO流概述及FileWriter类的使用 FileReader类使用 缓冲流介绍和使用 IO流相关案例 NO.one IO流概述及FileWriter类使用 1.1 IO流概述及分类 IO流用 ...

  9. IO流-基础

    //创建输出流对象 FileWriter fw = new FileWriter("d:\\a.txt"); /* * 创建输出流对象做了哪些事情: * A:调用系统资源创建了一个 ...

随机推荐

  1. 图片FormData上传

    var base64String = /*base64图片串*/; //这里对base64串进行操作,去掉url头,并转换为byte var bytes = window.atob(base64Str ...

  2. arm linux 移植 x265

    背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...

  3. YOLO V1、V2、V3算法 精要解说

    前言 之前无论是传统目标检测,还是RCNN,亦或是SPP NET,Faste Rcnn,Faster Rcnn,都是二阶段目标检测方法,即分为“定位目标区域”与“检测目标”两步,而YOLO V1,V2 ...

  4. 快速为Eclipse配置PyDev插件

    想学习Python,查询网络之后发现PyDev是很好的插件,所以就想为Eclipse配置它.结果在整个配置的过程中出现了各种问题,版本问题,重复问题,反正乱七八糟的,本身安装一次的时间就很长,中间出现 ...

  5. Day6 - H - Balanced Lineup POJ - 3264

    For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same order. One d ...

  6. leetcode1 twoSum

    """ Given an array of integers, return indices of the two numbers such that they add ...

  7. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):带有字体图标的导航栏

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. DevOps - 生命周期

    章节 DevOps – 为什么 DevOps – 与传统方式区别 DevOps – 优势 DevOps – 不适用 DevOps – 生命周期 DevOps – 与敏捷方法区别 DevOps – 实施 ...

  9. python 鞍点

    # 鞍点: 所在行的最大值,所在列的最小值 import random A = [[random.randint(1,100) for j in range(5)]for i in range(5)] ...

  10. Andriod studio 汉化教程

    1.找到安装目录,D:\Program Files\Android\Android Studio\lib,先保存resources_en,并且把它的名字改为resources_cn.jar 2.下载汉 ...