Java IO 之 System类
1、使用System.in.read读取,使用System.out.println 输出
package org.zln.io; import java.io.IOException; /**
* Created by coolkid on 2015/6/21 0021.
*/
public class TestSystemInReadString {
public static void main(String[] args) throws IOException {
byte[] bytes = new byte[100];
int len = 0;
System.out.println("开始读取");
while ((len = System.in.read(bytes))>0){
System.out.println("len:"+len);
System.out.write(bytes, 0, len);
if (len>=4&&"exit".equalsIgnoreCase(new String(bytes,0,4))){
break;
}
}
System.out.println("结束读取");
}
}
E:\GitHub\tools\JavaEEDevelop\Lesson1_JavaSe_Demo1\src\org\zln\io\TestSystemInReadString.java
分析:上述代码存在缺陷,就是每次(行)读取的数据不能超过100字符,超过部分会被舍弃。
2、使用System.console.readLine读取
package org.zln.io; /**
* Created by coolkid on 2015/6/21 0021.
*/
public class TestConsole {
public static void main(String[] args) {
while (true){
System.out.print("开始读取:");
String s = System.console().readLine();
System.out.println("read:"+s);
if (s.length()>3&&"exit".equalsIgnoreCase(s.substring(0,4))){
break;
} }
System.out.println("读取结束");
}
}
E:\GitHub\tools\JavaEEDevelop\Lesson1_JavaSe_Demo1\src\org\zln\io\TestConsole.java
分析:使用console类,必须在控制台中允许,不能在IDE。因为虚拟机是否具有控制台取决于底层平台,以及调用虚拟机的方式
3、密码的隐藏输入
private static void consoleReadPassword() {
while (true){
String s = new String(System.console().readPassword("%s","请输入密码:"));
System.out.println("read:"+s);
if (s.length()>3&&"exit".equalsIgnoreCase(s.substring(0,4))){
break;
}
}
System.out.println("读取结束");
}
E:\GitHub\tools\JavaEEDevelop\Lesson1_JavaSe_Demo1\src\org\zln\io\TestConsole.java
分析:效果与在Linux控制台中输入密码相同,就是不会显示输入的密码是多少,一定程度上防止密码泄露
Java IO 之 System类的更多相关文章
- Java—IO流 File类的常用API
File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOE ...
- java io包File类
1.java io包File类, Java.io.File(File用于管理文件或目录: 所属套件:java.io)1)File对象,你只需在代码层次创建File对象,而不必关心计算机上真正是否存在对 ...
- java中的System类
System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. 由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类.其内部的成员变 ...
- JAVA:IO流——File类
1.掌握File 类的作用 2.可以使用File 类中的方法对文件进行操作 所有的 io 操作都保存在 java.io 包中. 构造方法:public File (String pathname) 直 ...
- [转]探究java IO之FileInputStream类
使用FileInputStream类创建的InputStream对象可以用于从文件读取内容.两个常用的构造函数如下所示: ? 1 2 FileInputStream(String filePath) ...
- java IO之 File类+字节流 (输入输出 缓冲流 异常处理)
1. File类
- JAVA IO:Scanner类
使用Scanner类接收输入数据. JAVA提供了专门的输入数据类,此类可以完成BufferedReader类的功能,也可以方便的对输入数据进行验证,此类存放于JAVA.UTILL包中. 常用方法如下 ...
- 系统学习 Java IO (三)----文件类 File
目录:系统学习 Java IO---- 目录,概览 Java IO API 中的 File 类可以访问基础文件系统. 使用 File 类,可以: 检查文件或目录是否存在. 如果目录不存在,创建一个目录 ...
- java 14 -5 System类
System类包含一些有用的类字段和方法.它不能被实例化. 方法: 1.public static void gc():运行垃圾回收器. 2.public static void exit(int s ...
随机推荐
- 【学时总结】◆学时·IX◆ 整体二分
◆学时·IX◆ 整体二分 至于我怎么了解到这个算法的……只是因为发现一道题,明显的二分查找,但是时间会爆炸,被逼无奈搜题解……然后就发现了一些东西QwQ ◇ 算法概述 整体二分大概是把BFS与二分查找 ...
- 模块importlib介绍
importlib包的目的是双重的.一个是在Python源代码中提供import语句(以及扩展名为__import__()函数)的实现.这提供了可以移植到任何Python解释器的import的实现.这 ...
- 来自一枚初生牛犊不怕虎的小菜鸟的Mock.js使用,不足之处欢迎读者的指出 谢谢
本文章写的是基于require的mock.js的几种常用生成随机数据和ajax模拟前后端的交互信息 <script src="./app/libs/require.js"&g ...
- spring-运行时值注入
在项目中经常使用连接数据库的配置,如下所示 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDa ...
- 【php】php 生僻知识点认知
资料引用来源:http://www.runoob.com/php/php-tutorial.html 表单提交中, 变量名中的点和空格被转换成下划线.例如 <input name=" ...
- HBase学习(三):数据模型
和传统的关系型数据库类似,HBase以表(Table)的方式组织数据.HBase的表由行(Row)和列(Column)共同构成,与关系型数据库不同的是HBase有一个列族(ColumnFamily)的 ...
- JavaScript Shell学习分享
目录 JavaScript Shell学习分享 简介 安装 使用原因 小结 JavaScript Shell学习分享 简介 JavaScript Shell是由Mozilla提供的综合JavaScri ...
- java应用:csv文件的读写
csv数据特点: csv是文本格式,一行数据是一条记录,每个单元之间用“,”隔开.csv数据可以用Excel打开. 读写csv文件的主要程序如下所示: import java.io.BufferedR ...
- 数据库中pymysql模块的使用
pymysql 模块 使用步骤: 核心类Connect链接用和Cursor读写用 1. 与数据库服务器建立链接 2. 获取游标对象(用于发送和接收数据) 3. 用游标执行sql语句 4. 使用fetc ...
- uva 253 - Cube painting(相同骰子)
习题4-4 骰子涂色(Cube painting, UVa 253) 输入两个骰子,判断二者是否等价.每个骰子用6个字母表示,如图4-7所示. 图4-7 骰子涂色 例如rbgggr和rggbgr分别表 ...