JAVA输入输出总结

标准输入:

Scanner cin = new Scanner(System.in);

 cin.nextLine();:输入一行,可能存在空格,功能特点类似于C中的gets();

cin.next();:输入一个单词,以空白字符为结束标志,类似于scanf(“%s”,str);

cin.nextInt();:输入整形数据

cin.nextDouble();输入浮点性数据

以上4种输入方式这些输入都是可见的,不适用于控制台读取密码

控制台密码的读取,应用Console类:一次读入一行

为了安全起见,返回的密码存放在一维数组中,对密码进行了处理,用一个填充值覆盖 数组元素

代码:

import java.io.Console;

public class Main
{
	public static void main(String[] args)
	{
		Console cin = System.console();
		String name = cin.readLine("Username:");
		char[] Password = cin.readPassword("Password:");

		String Pass = "";//初学还不知道这里有没有什么好的办法
		for(int i = 0;i<Password.length;i++)
		{
			Pass = Pass + Password[i];
		}
		if(Pass.equals("123456") && name.equals("xxx"))
		{
			System.out.println("密码正确");
		}
		else
		{
			System.out.println("密码错误");
		}
	}
}

标准输出:

就比较简单了

System.out.println(“hello”);//加上ln会自动换行,不加则不换
System.out.println(“heado”+”,”+”world”+2014);//打印hello,world2014,为了字符串连接,重载了+运算符

于此同时 JAVA  SE5.0还沿用了C中的printf();方法,用法和C基本一样

double x = 0.56;
System.out.printf("%.2f",x);//只是没有了&符

System.out.println();是最常用的

文件的输入和输出:

1.要想对文件进行读取,就要用File对象构造一个Scanner对象,如:

Scanner cin = new Scanner(Paths.get("myfile.txt"));

如果文件名中有反斜杠,就要在每个反斜杠的前面再加一个反斜杠:

“C:\\MyFile\\myfile.txt”

2.要想写入,就要构造PrintWriter对象,只需要提供文件名

PrintWriter out = new PrintWriter("myfile.txt");

如果文件不存在,则创建文件,可以输出到System.out一样使用print、println、printlf等命令

注意:

可以构造一个带子父串参数的Scanner,但这个Scanner将字符串解释为数据,而不是文件名

Scanner in = new Scanner(“myfile.txt”);

这个Scanner会将参数作为包含10个字符的数据:’m’、‘y’、’f’等

PS:

当指定一个相对文件名时,例:myfile.txt 或 .../myfile.txt

文件位于Java虚拟机启动路径的相对位置

1.如果在命令行方式下,用下列命令启动程序

java.MyProg //启动路径就是命令解释器的当前路径

2.如果使用集成开发环境,那么启动路径由IDE控制,可以使用下面的调用方式来找到路径的位置:

String dir = System.getProperty(“user.dir”);

如果觉得定位文件比较麻烦,可以考虑用绝对路径,如“C:\\madirectory\\myfile.txt”或者/home/me/directory/myfile.txt

警告:

如果用一个不存在的文件构造一个Scanner或用一个不能被创建的文件名构造一个PrintWriter那么就会出现异常,这些异常,在Java被认为比“整除零”更严重,所以,需要在main方法中用throws标记

public static void main(String[] args)throws FileNotFoundException
	{
		PrintWriter out = new PrintWriter("myfile.txt");
	}

PS:当采用命令行方式启动一个人程序,可以用重定向将文件捆绑到System.in和System.out

Java MyProg <myfile.txt> output.txt

这样就不必担心处理FileNotFoundException异常了

java.util.Scanner 5.0

Scanner(File f)

构造一个从给定文件读取数据的Scanner

Scanner(String data)

构造一个从给定字符串读取数据的Scanner

import java.io.PrintWriter 1.1

PrinteWriter(String FileName)

构造一个将数据写入文件的PrintWriter,文件名由参数指定

Java.nio.file.Paths 7

Static Path get(String Pathname)

根据给定的路径构造一个Path

时间: 2024-10-13 10:33:06

JAVA输入输出总结的相关文章

Java 输入输出(一)——流

Java输入输出大致可以分为两类,流式操作与非流式操作,流式操作主要关注与文件内容的读写,非流式操作主要用于文件在磁盘上的管理.下面首先学习流式数据操作. 流 与c++类似,java中也提供了流的概念来处理输入输出(I/O).Java中,可以从其中读入一个字节序列的对象称为输入流,可以向其中写入一个字节序列的对象称为输出流.输入输出流都是对象,这一类对象需要绑定特定的字节来源和目的地,可以是标准输入输出(键盘和屏幕),文件或者网络,甚至可以是内存块. 抽象类InputStream和OutputS

Java输入输出(二)——具体操作

文本输入输出 进行文本输出的类是PrintWriter,这个类提供格式化输出字符的功能,它是Writer的子类.类似于System.out的使用,PrintWriter的实例提供了很多类似的输出功能.System.out是PrintStream的实例,PrintStream是OutputStream的子类,因此System.out与PrintWriter的实例处于同等位置,因此具有类似的操作.所不同的是System.out负责字节流输出,而PrintWriter负责字符流输出. PrintWri

ACM之Java输入输出

一.Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非常之垃圾 3. 有些OJ上的题目会直接将OI上的题目拷贝过来,所以即便是题目中有输入和输出文件,可能也不需要,因为在OJ系统中一般是采用标准输入输出,不需要文件 4. 在有多行数据输入的情况下,一般这样处理, static Scanner in = new Scanner(System.in); w

java输入输出(快速)

头文件: import java.io.*; 定义: BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); PrintWriter out = new PrintWriter(System.out); 输入输出: a = new Integer(in.readLine()); out.println("Hello!");

java输入输出整理

比较传统的输入方法用输入流,得到字符串后要另行判断.转换 案例 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class MainRun { public static void main(String[] args) { try { BufferedReader bufferedReader = new BufferedReader( new

java输入输出

1. import java.io.*;//写进文档,然后又在显示器显示出来.public class fileinputstream{public static void main(String[] args) throws IOException {DataOutputStream out = new DataOutputStream(new FileOutputStream("dest.txt"));//定义要保存的数据数组.double[] prices = { 19.99,

java 输入输出项目

package hellohe; import java.util.Scanner; /** * * @author Administrator *1.导入java.util.scanner; *2.创建scanner对象 */ public class hellohe { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("请输入考试成绩信息:"

java输入输出&amp;&amp;文件

java如何通过绝对路径和相对路径读取文件 Java 读取文本文件 Java 中如何键盘输入 Java读取文件 java 获取文本一行一行读 java一行一行读入数据 java如何键盘输入数据 Java读取文件操作.实现读一行删一行 Java 实例 - 读取文件内容 JAVA追加输出到文件的方法 FileWriter初始化规范 Java FileWriter类 [Java]如何将文字内容输出到文件 Java File类(文件操作类)详解 Java输入/输出(I/O)流 Java字节流的使用:字节

ACM输入输出--多组测试用例--C、C++、Java

最近在练习一些关于ACM的题,往往会有多组测试用例,不知道该怎么办,查找资料总结之. C和C++:必须是 int  main()提交,输入和输出的格式一定要按照题目要求的去写,否则提交不过.输入不可用文件输入. Language C C++ To read numbers int n; while(scanf("%d", &n) != EOF) { ... } int n; while (cin >> n) { ... } To read characters in