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的更多相关文章

  1. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  2. java IO流详解

    流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  3. Java IO流学习总结

    Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  4. 揭开Java IO流中的flush()的神秘面纱

    大家在使用Java IO流中OutputStream.PrintWriter --时,会经常用到它的flush()方法. 与在网络硬件中缓存一样,流还可以在软件中得到缓存,即直接在Java代码中缓存. ...

  5. java io流 对文件夹的操作

    java io流 对文件夹的操作 检查文件夹是否存在 显示文件夹下面的文件 ....更多方法参考 http://www.cnblogs.com/phpyangbo/p/5965781.html ,与文 ...

  6. Java IO流题库

    一.    填空题 Java IO流可以分为   节点流   和处理流两大类,其中前者处于IO操作的第一线,所有操作必须通过他们进行. 输入流的唯一目的是提供通往数据的通道,程序可以通过这个通道读取数 ...

  7. Java IO流总结

    Java IO流分类以及主要使用方式如下: IO流 |--字节流 |--字节输入流 InputStream: int read();//一次读取一个字节 int read(byte[] bys);// ...

  8. java io流 运行错误时,保存异常到文件里面

    java io流 运行错误时,保存异常到文件里面 下面这个实例,运行后,输入数字,为正确,如果输入字符串,则报错,保存错误信息 //运行错误时,保存异常到文件里面 //下面这个实例,运行后,输入数字, ...

  9. java io流 创建文件、写入数据、设置输出位置

    java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ...

  10. java io流 数据流传输

    java io流 数据流传输 把这段当公式用就可以了 //数据流传输 import java.io.*; public class Index{ public static void main(Str ...

随机推荐

  1. java中使用net.sf.json对json进行解析

    net.sf.json依赖的包很多. 有commons-collections,commons-beanutils.jar,commons-httpclient.jar,commons-lang.ja ...

  2. 2017河工大校赛补题CGH and 赛后小结

    网页设计课上实在无聊,便开始补题,发现比赛时候僵着的东西突然相通了不少 首先,"追妹"这题,两个队友讨论半天,分好多种情况最后放弃(可是我连题目都没看啊),今天看了之后试试是不是直 ...

  3. 《Effective C#》读书笔记-1.C# 语言习惯-1.使用属性而不是可访问的数据成员

    思维导图: 大纲: 1.使用属性而不是可访问的数据成员    属性        指定不同的访问权限        隐式属性降低了声明属性的工作量        允许将数据成员作为公共接口的一部分暴露 ...

  4. 【解决问题】解决python安装模块时UnicodeDecodeError

    安装模块时,出现报错: UnicodeDecodeError: 'ascii' codec can't decode byte 0xcb in position 68: ordinal not in ...

  5. codeforces 528D Fuzzy Search

    链接:http://codeforces.com/problemset/problem/528/D 正解:$FFT$. 很多字符串匹配的问题都可以用$FFT$来实现. 这道题是要求在左边和右边$k$个 ...

  6. web安全—浏览器的进制

    浏览器的进制 字符的ascii码值可以转化为进制形式.可以用来绕过XSS filter. HTML属性值中的进制使用 .十进制使用a 表示,&#作为前缀,;作为后缀,后缀也可以没有. 如果要使 ...

  7. 前端工作日常爬坑之——单页面微信开发Jssdk相关,以及jssdk图片直传自己服务器的实现。

    日常爬坑 遇到的情况大致说明: 项目基于Vue2全家桶实现,vue-router控制前端路由,路由模式是History(主要是领导追求太高,觉得hash带#号太丑,然后遇到了小坑...),主要是服务于 ...

  8. 略过 Mysql 5.7的密码策略

    之前从mysql 5.6的时候,mysql 还没有密码策略这个东东,所以我们每个用户的密码都可以随心所欲地设置,什么123 ,abc 这些,甚至你搞个空格,那也是OK的. 而mysql.user 表里 ...

  9. 设计模式--MVC(C++版)

    MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发. Model(模型)-是应用程序中用于处理应用程序数据逻辑的部分.通常模型对象 ...

  10. 新鲜出炉的less与sass较量

    最近接触了Bootstrap,涉及到了LESS,CSS的预处理器使用最广泛的就是LESS和Sass,都是努力把CSS武装成为开发语言,让它从简单的描述性语言过渡到具有程序式特性的语言,主要的特性就是: ...