Java IO流--练习2
1)写一个Java程序,输入3个整数,并求出三个数的最大数和最小数
代码:
package 第十二章IO流;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
//写一个Java程序,输入3个整数,并求出三个数的最大数和最小数
public class Test1 {
public static void main(String[] args) {
BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
int max=0;
int min=0;
while(true){
try {
//输入三个值
System.out.println("请输入第一个数");
String string=reader.readLine();
System.out.println("请输入第二个数");
String string2=reader.readLine();
System.out.println("请输入第三个数");
String string3=reader.readLine();
//匹配输入的是否是数字
boolean flag=string.matches("[1-9][0-9]*");
boolean flag2=string2.matches("[1-9][0-9]*");
boolean flag3=string3.matches("[1-9][0-9]*");
if(flag&&flag2&&flag3){
//将字符串转为数字
int a=Integer.parseInt(string);
int b=Integer.parseInt(string2);
int c=Integer.parseInt(string3);
//求最大值和最小值
max=a>b?a:b;
max=max>c?max:c;
min=a<b?a:b;
min=min<c?min:c;
System.out.println("max="+max+",min="+min);
break;
}else{
//若不是数字则重新录入
System.out.println("数字不合法!---请重新输入三个数字:");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
运行结果
2)键盘录入文件的内容以及要保存文件的名称,然后根据名称创建相应的文件,并将内容写进文件。
规定文件名规则:字母,下划线,$组成,但不能以数字开头—(思考:实际的文件名还可以是汉字以及其他文字和符号,看看怎么匹配)
代码:
package 第十二章IO流;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
//键盘录入文件的内容以及要保存文件的名称,然后根据名称创建相应的文件,并将内容写进文件。
//规定文件名规则:字母,下划线,$组成,但不能以数字开头---(思考:实际的文件名还可以是汉字以及其他文字和符号,看看怎么匹配)
public class Test2 {
public static void main(String[] args) {
BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
while(true){
try {
System.out.println("请输入文件名称:");
String string2=reader.readLine();
//文件名称匹配
boolean flag=string2.matches("[a-zA-Z$_][a-zA-Z1-9$_]*");
if(flag){
System.out.println("请输入文件内容:");
String string=reader.readLine();
File file=new File(string2);
file.createNewFile();
FileOutputStream fos=new FileOutputStream(file);
fos.write(string.getBytes());
fos.flush();
break;
}else {
System.out.println("输入的文件名不合法!");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
运行结果:
Java IO流--练习2的更多相关文章
- Java:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- Java IO流学习总结
Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- 揭开Java IO流中的flush()的神秘面纱
大家在使用Java IO流中OutputStream.PrintWriter --时,会经常用到它的flush()方法. 与在网络硬件中缓存一样,流还可以在软件中得到缓存,即直接在Java代码中缓存. ...
- java io流 对文件夹的操作
java io流 对文件夹的操作 检查文件夹是否存在 显示文件夹下面的文件 ....更多方法参考 http://www.cnblogs.com/phpyangbo/p/5965781.html ,与文 ...
- Java IO流题库
一. 填空题 Java IO流可以分为 节点流 和处理流两大类,其中前者处于IO操作的第一线,所有操作必须通过他们进行. 输入流的唯一目的是提供通往数据的通道,程序可以通过这个通道读取数 ...
- Java IO流总结
Java IO流分类以及主要使用方式如下: IO流 |--字节流 |--字节输入流 InputStream: int read();//一次读取一个字节 int read(byte[] bys);// ...
- java io流 运行错误时,保存异常到文件里面
java io流 运行错误时,保存异常到文件里面 下面这个实例,运行后,输入数字,为正确,如果输入字符串,则报错,保存错误信息 //运行错误时,保存异常到文件里面 //下面这个实例,运行后,输入数字, ...
- java io流 创建文件、写入数据、设置输出位置
java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ...
- java io流 数据流传输
java io流 数据流传输 把这段当公式用就可以了 //数据流传输 import java.io.*; public class Index{ public static void main(Str ...
随机推荐
- sql中如何分割字符串
使用方式: SELECT AllItem AS BldGUID FROM dbo.fn_split('01.02.03','.') 函数: GO )) )) --实现split功能 的函数 as ...
- 【Android】再来一篇Fragment懒加载(只加载一次哦)
效果 老规矩,先来看看效果图 没错,我又入坑了,又重新做了个 Gank 客户端,因为之前那个代码写得太烂了,这次有好好的考虑了下架构之类的事,代码应该会更容易读懂了点了,吧.哈哈,再次欢迎来 star ...
- es6面试问题——Promise
话说刚换工作一个月有余,在上家公司干的实在是不开心,然后就出来抱着试试的心态出来面了几家公司,大多数公司问的前端问题也就那么多,其中有个面试问题让我记忆犹新,只因为没有答上来,哈哈! 当时面试官问我怎 ...
- Vue 自定义图片懒加载指令v-lazyload
Vue是可以自定义指令的,最近学习过程中遇见了一个需要图片懒加载的功能,最后参考了别人的代码和思路自己重新写了一遍.以下将详细介绍如何实现自定义指令v-lazyload. 先看如何使用这个指令: &l ...
- Less和Sass的使用
[Less中的变量] 1.声明变量:@变量名:变量值; 使用变量:@变量名 @length:100px; @color:yellow; @opa:0.5; >>>Less中变量的类 ...
- CSS垂直和水平居中
在css中,居中使用十分频繁. 居中分为水平和垂直居中 水平居中十分简单: body{ background:#f90; } body统一为这个颜色 div { margin:0 auto; back ...
- 第一篇 Rewrite规则简介
1.Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言.可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式.如果要想用到rewrite模块,必 ...
- js中addEventListener第三个参数涉及到的事件捕获与冒泡
js中,我们可以给一个dom对象添加监听事件,函数就是 addEventListener("click",function(){},true); 很容易理解,第一个参数是事件类型, ...
- Java学习笔记——设计模式之五.工厂方法
水边一只青蛙在笑 --石头和水 工厂方法模式(Factory Method),定义了一个用于创建对象的接口,让实现类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 这里在简单和工厂的基础上 ...
- 学生成绩管理C语言版
[标题]学生成绩管理的设计与实现 [开发语言]C语言 [概要设计]使用结构体存储学生的学号.姓名和成绩信息,实现对学生成绩类的基本操作:增加.删除.查询.排序 [测试数据]按提示输入5组正确的正确的数 ...