练习一:统计一个文件calcCharNum.txt中字母‘A’和'a'出现的总次数。

package com.test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException; //练习一:统计一个文件calcCharNum.txt中字母‘A’和'a'出现的总次数。
/*
* 读取文件:FileInputStream
* 判断单个字符出现的次数,一次只能读一个,当读到的内容相符时,相应数量加1
*/
public class TestOne { public static void main(String[] args) {
// TODO Auto-generated method stub
//1.添加文件路径
File file=new File("E:\\calcCharNum.txt");
//2.创建流,读取文件
FileInputStream fis=null;
try {
fis=new FileInputStream(file);
int numA=0;
int numa=0;
int data=0;
while((data=fis.read())!=-1) {
if(new String((char)data+"").equals("a")) {
numa++;
}
if(new String((char)data+"").equals("A")) {
numA++;
}
}
System.out.println("a的个数:"+numa);
System.out.println("A的个数:"+numA);
System.out.println("总数:"+(numa+numA));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
fis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}

练习二:在电脑E盘下创建一个文件为HelloWord.txt文件,

    判断它是文件还是目录,

    再创建一个目录IOTest,

    之后将HelloWorld.txt移动到IOTest目录下去,

    之后遍历IOTest这个目录下的文件。

package com.test;

import java.io.File;
import java.io.IOException; /*
* 练习二:在电脑E盘下创建一个文件为HelloWord.txt文件,
    判断它是文件还是目录,
    再创建一个目录IOTest,
    之后将HelloWorld.txt移动到IOTest目录下去,
    之后遍历IOTest这个目录下的文件。
*/
public class TestTwo { public static void main(String[] args) {
// TODO Auto-generated method stub
//在E盘下创建文件
File file=new File("E:","HeloWorld.txt");
//创建文件
boolean isCreate;
try {
isCreate=file.createNewFile();
if(isCreate) {
System.out.println("创建文件成功");
}else {
System.out.println("创建文件失败");
}
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("创建文件失败");
}
//判断是文件还是目录
if(file.isFile()) {
System.out.println("这是一个文件");
}else {
System.out.println("这是一个目录");
}
//创建目录
File file2=new File("E:/IOTest");
file2.mkdirs();
//移动文件至目录下
if(file.renameTo(new File("E:/IOTest/HelloWorld.txt"))) {
System.out.println("文件移动成功");
}else {
System.out.println("文件移动失败");
}
//遍历目录
String[] arrs=file2.list();
for (String string : arrs) {
System.out.println(string);
}
}
}

关于Java中IO流的练习的更多相关文章

  1. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  2. java 中 IO 流分为几种?(未完成)

    java 中 IO 流分为几种?(未完成)

  3. JAVA中IO流总结

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42119261 我想你对JAVA的IO流有所了解,平时使用的 ...

  4. Java中IO流,输入输出流概述与总结

    总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入 ...

  5. java中IO流相关知识点

    (一) 下边使用outputStream字节输出流进行写操作 package zdbIO;import java.io.File;import java.io.FileNotFoundExceptio ...

  6. Java中IO流

    * IO流用来处理设备之间的数据传输 * Java对数据的操作是通过流的方式 * Java用于操作流的类都在IO包中 * 流按流向分为两种:输入流,输出流. * 流按操作类型分为两种: * 字节流 : ...

  7. java中io流浅析

    1.java.io包下File类:java程序中的此类的一个对象,就对应着硬盘中的一个文件或网络中的一个资源.File file1 = new File("d:\\io\\helloworl ...

  8. Java中IO流中的装饰设计模式(BufferReader的原理)

    本文粗略的介绍下JavaIO的整体框架,重在解释BufferReader/BufferWriter的演变过程和原理(对应的设计模式) 一.JavaIO的简介 流按操作数据分为两种:字节流与字符流. 流 ...

  9. Java中IO流讲解(一)

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

  10. JAVA中IO流详解

    IO流:数据传输是需要通道的,而IO流就是数据传输的通道. IO流可以形象的比喻为运送货物的传输带. IO流的分类: ①根据操作的数据类型的不同可以分为 :字节流与字符流. ②根据数据的流向分为:输入 ...

随机推荐

  1. 使用xUnit为.net core程序进行单元测试 -- Assert

    第一部分: http://www.cnblogs.com/cgzl/p/8283610.html Assert Assert做什么?Assert基于代码的返回值.对象的最终状态.事件是否发生等情况来评 ...

  2. 开启 IPv6 新时代,升级后的 IPv6 厉害在哪?

    IPv6,Internet Protocol Version 6,从字面翻译 “互联网协议第 6 版”,它是IETF设计的用于替代现行版本 IP 协议-IPv4 协议,被称作“下一代互联网协议”.早在 ...

  3. LinkedHashMap 底层分析

    众所周知 HashMap 是一个无序的 Map,因为每次根据 key 的 hashcode 映射到 Entry 数组上,所以遍历出来的顺序并不是写入的顺序. 因此 JDK 推出一个基于 HashMap ...

  4. Python爬虫入门教程 28-100 虎嗅网文章数据抓取 pyspider

    1. 虎嗅网文章数据----写在前面 今天继续使用pyspider爬取数据,很不幸,虎嗅资讯网被我选中了,网址为 https://www.huxiu.com/ 爬的就是它的资讯频道,本文章仅供学习交流 ...

  5. docker-swarm相关命令和注意事项

    在k8s出现之后,docker-swarm使用的人越来越少,但在本地集成开发环境的搭建上,使用它还是比较轻量级的,它比docker-compose最大的好处就是容器之间的共享和服务的治理,你不需要li ...

  6. ELK-安装logstash

    注意:在下载tar包的时候需要注意下安装的es版本号,按照官网的说明版本是对应一致的. $ wget https://artifacts.elastic.co/downloads/logstash/l ...

  7. leetcode — gas-station

    /** * Source : https://oj.leetcode.com/problems/gas-station/ * * There are N gas stations along a ci ...

  8. Java开发知识之Java面相对象

    Java开发知识之Java面相对象上 一丶什么是面相对象 了解什么什么是面相对象.那么首先要了解什么是面相过程. 面相过程的意思就是. 什么事情都亲力亲为. 比如上一讲的排序算法. 我们自己写的. 这 ...

  9. 二进制安装部署kubernetes集群---超详细教程

    本文收录在容器技术学习系列文章总目录 前言:本篇博客是博主踩过无数坑,反复查阅资料,一步步搭建完成后整理的个人心得,分享给大家~~~ 本文所需的安装包,都上传在我的网盘中,需要的可以打赏博主一杯咖啡钱 ...

  10. MySQL 笔记整理(9) --普通索引和唯一索引,应该怎么选择?

    笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 9) --普通索引和唯一索引,应该怎么选择? 假如你在维护一个市民系统, ...