1. 节点类类型:

  

2. 访问文件:

Demo_1:

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException; public class Test {
public static void main(String[] args) {
int b = 0;
long num = 0;
FileInputStream in = null;
try{
in = new FileInputStream("E:/eclipse projiect/data.txt");
}catch(FileNotFoundException e){
System.out.println("指定文件不存在");
System.exit(-1);
}
try {
while((b = in.read()) != -1){
System.out.print((char)b +" ");
num++;
if(num/5 == 0){
System.out.println();
}
}
in.close();
System.out.println("一共读取了多少个字节:"+num); //该方法不认识字符
} catch (IOException e) {
System.out.println("指定文件读取错误");
System.exit(-1);
}
}
}

运行结果:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ± ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? · ? ? ? ? ? ? ± ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? × ? ? ¤ ? ? · á ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 
 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ú ? ? ? ì ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ¤ ? ? ? ? ? ? ? ? ? ? ? ü ? ? ? ? ? ? ? ú ? ? ? ? ? ó ? ? ? ú × ? ? ? ? è ? ? ? ? ? ? ? ì ? ? ? ? ? ?  一共读取了多少个字节:894

Demo_2:

class Test{
public static void main(String[] args) {
int b = 0;
int c = 0;
FileInputStream in = null;
FileOutputStream out = null;
try {
in = new FileInputStream("E:/eclipse projiect/data.txt");
out = new FileOutputStream("E:/eclipse projiect/data1.txt"); // FileOutputStream 如果没有这个文件,自动的会帮你建一个
try {
while((b = in.read()) != -1){
out.write(b);
}
in.close();
out.close();
} catch (IOException e) {
System.out.println("文件复制错误");
System.exit(-1);
}
} catch (FileNotFoundException e) {
System.out.println("指定文件不存在");
System.exit(-1);
}
System.out.println("文件复制成功");
}
}

  运行结果:文件复制成功

Demo_3:

class Test {
public static void main(String[] args) {
FileReader fr = null;
int c = 0;
int len = 0;
try {
fr = new FileReader("E:/eclipse projiect/data2.txt");
while((c = fr.read()) != -1){ // 一个字符一个字符的读
System.out.print((char)c);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
}
}
}

运行结果:

凤兮凤兮归故乡,遨游四海求其凰
三尺长剑,斩不尽相思情缠
邂逅你,是生生世世的宿命
长歌当哭,为君仗剑试天下.
永生不过是场幻梦,唯吾所爱不朽
觅得苍天,踏破碧落黄泉
何以缘起,何以缘灭,
当以剑歌问之
直至地老天荒,独剩你我
剑之所去,心之所往
有凤(后面两字听不清,不确定) 阵亡.我买醉或为你买醉(不确定)

Demo_4:

import java.io.*;
class Test {
public static void main(String[] args) {
FileWriter fw = null;
try {
fw = new FileWriter("E:/eclipse projiect/data3.txt"); // 如果这个文件不存在,它会帮我们建一个
for(int c=0;c<5000;c++){
fw.write((char)c); // 将这个字符写进去,char 2 个字节,最大到25536.相当于Unicode把大多数国家的字符都写进去了.
} // char 2 个字节,代表了全世界大多数国家的文字
fw.close();
} catch (Exception e) {
System.out.println("文件写入错误");
System.exit(-1);
}
System.out.println("文件写入成功");
}
}

运行结果:文件写入成功

data3.txt 文件中的内容为:

!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~????????????????????????????????????¤??§¨???????°±?????·???????????????????????????????×????????àá??????èéê?ìí????òó???÷?ùú?ü????ā?????????????????ē???????ě???????????????ī????????????????????????ń???ň????ō?????????????????????????????ū??????????????????????????????????????????????????????????????????????????????????????????????????ǎ?ǐ?ǒ?ǔ?ǖ?ǘ?ǚ?ǜ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ɑ???????????????ɡ?????????????????????????????????????????????????????????????????????????????????????????????????????ˇ?ˉˊˋ?????????????˙?????????????????????????????????????????????????????????????????????????????????????????????????????????????ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ?ΣΤΥΦΧΨΩ???????αβγδεζηθικλμνξοπρ?στυφχψω???????????????????????????????????????????????????????Ё??????????????АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя?ё??????????
// 其中部分表示为?,是因为Eclipse显示的问题

Java之I/O流(第2部分)的更多相关文章

  1. java 字节流和字符流的区别 转载

    转载自:http://blog.csdn.net/cynhafa/article/details/6882061 java 字节流和字符流的区别 字节流与和字符流的使用非常相似,两者除了操作代码上的不 ...

  2. java 21 - 12 IO流的打印流

    打印流 字节流打印流 PrintStream 字符打印流 PrintWriter打印流的特点: A:只有写数据的,没有读取数据.只能操作目的地,不能操作数据源.(只能写入数据到文件中,而不能从文件中提 ...

  3. Java中的IO流系统详解(转载)

    摘要: Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java ...

  4. java 字节流和字符流的区别

    转载自:http://blog.csdn.net/cynhafa/article/details/6882061 java 字节流和字符流的区别 字节流与和字符流的使用非常相似,两者除了操作代码上的不 ...

  5. Java中的IO流系统详解

    Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java 内用 U ...

  6. java开发之IO流

    一直对IO流记不清楚,从别的地方转过来. 看下图: 流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两 ...

  7. java中的IO流

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

  8. Java IO 文件与流基础

    Java IO 文件与流基础 @author ixenos 摘要:创建文件.文件过滤.流分类.流结构.常见流.文件流.字节数组流(缓冲区) 如何创建一个文件 #当我们调用File类的构造器时,仅仅是在 ...

  9. JAVA通过I/O流复制文件

    JAVA通过I/O流复制文件 本文是对字节流操作,可以多音频视频文件进行操作,亲测有效. 个人感觉这个东西就是靠记的, 没什么好解释的,,,, import java.io.File; import ...

  10. java中的缓冲流BufferedWriter和BufferedReader

    java中的缓冲流有BufferedWriter和BufferedReader 在java api 手册中这样说缓冲流: 从字符输入流中读取文本,缓冲各个字符,从而实现字符.数组和行的高效读取.可以指 ...

随机推荐

  1. Python入门(案例)

    Python入门(案例) #一.上课案例: #输出hello wordprint('hello word') #python注释有两种#1.单行注释#这是单行注释#2.多行注释'''这是多行注释''' ...

  2. CentOS7 LNMP+phpmyadmin环境搭建(三、安装phpmyadmin)

    之前我们已经安装了lnmp的环境,现在让我们来安装phpmyadmin. 跟前一样,yum默认的库里是没有phpmyadmin的,我们需要从epel库里进行安装,之前已经安装过epel的朋友就可以直接 ...

  3. PHP防止数字太大转化为科学计数法的方法

    PHP当数字在20位或者20位以上时,会转化为科学计数法 例子: <?phpecho 11111111111111111111; ?> 解决方法可以使用php函数number_format ...

  4. Hadoop mapreduce框架简介

    传统hadoop MapReduce架构(老架构)   从上图中可以清楚的看出原 MapReduce 程序的流程及设计思路:   1.首先用户程序 (JobClient) 提交了一个 job,job ...

  5. 面试乐融集团Python开发工程师有感

    这是笔者第一次面试,,乐融集团位于朝阳区朝阳公园的乐融大厦.是下午两点的笔面试,笔者是一点半到的,然后在里面等了会,开始笔试 笔试题并不是太难,就是考的比较宽,因为笔者是校招,所以笔试题出来了数据结构 ...

  6. python学习——单例模式

    在python中,单例模式在面试中非常重要.下面来给大家推荐一个Python中实现单例模式的博客地址. https://www.cnblogs.com/huchong/p/8244279.html

  7. C# set 跟 get

    可以在类里面 private string name; public string Name { get { return name; } set { name = value; } }

  8. pix2code开发笔记

    1.软件安装 首先需要安装Python3和pip (1) Python3 环境搭建 Window 平台安装 Python:  https://www.python.org/downloads/wind ...

  9. Java线程和多线程(十二)——线程池基础

    Java 线程池管理多个工作线程,其中包含了一个队列,包含着所有等待被执行的任务.开发者可以通过使用ThreadPoolExecutor来在Java中创建线程池. 线程池是Java中多线程的一个重要概 ...

  10. spring源码-自定义标签-4

    一.自定义标签,自定义标签在使用上面相对来说非常常见了,这个也算是spring对于容器的拓展.通过自定义标签的方式可以创造出很多新的配置方式,并且交给容器直接管理,不需要人工太多的关注.这也是spri ...