`
yeshaoting
  • 浏览: 683462 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

四种常用读取控制台输入方法

    博客分类:
  • J2SE
阅读更多

常用四种读取控制台输入方法:

1. Scanner读取方式

2. 字符流读取方式

3. 字节流读取方式

4. Console读取方式(JDK 1.6中新增的), 实际操作过程中, 发现不支持Eclipse自带命令行.

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Scanner;

/**
 * @TODO 四种常用读取控制台输入方法
 * @author jarg
 * @creatTime: 2010-12-29 下午04:54:41
 * @belongTo: com.jarg.io
 * @version 1.0
 */

public class ConsoleInput
{ 	/* 控制台输入为字节流 */
	public static InputStream in;

	public static void main(String[] args)
	{
		try
		{
			ScannerInput();
			CharInput();
			ByteInput();
			Console_Input();
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
	}

	/**
	 * 控制台输入
	 * */
	public static void input()
	{
		System.out.print("\ninput data:\n > ");
		in = System.in;
	}

	/**
	 * 1. Scanner读取方式
	 * */
	public static void ScannerInput()
	{
		input();
		Scanner s = new Scanner(in);
		System.out.println("1. Scanner读取方式:\t" + s.nextLine());
	}

	/**
	 * 2. 字符流读取方式
	 * 
	 * @throws IOException
	 * */
	public static void CharInput() throws IOException
	{
		input();
		/* InputStreamReader 是字节流通向字符流的桥梁 */
		InputStreamReader ir = new InputStreamReader(in);
		BufferedReader br = new BufferedReader(ir);

		System.out.println("2. 字符流读取方式:\t" + br.readLine());
	}

	/**
	 * 3. 字节流读取方式
	 * 
	 * @throws IOException
	 * */
	public static void ByteInput() throws IOException
	{
		input();

		BufferedInputStream bi = new BufferedInputStream(in);
		
		String output = "";
		int value = bi.read();
		while (value != -1 && value != 10 && value != 13)
		{
			output = output + (char) value;
			value = bi.read();
		}
		System.out.println("3. 字节流读取方式:\t" + output);
	}

	/**
	 * 4. Console读取方式,JDK 1.6中新增的
	 * 
	 * @throws IOException
	 * */
	public static void Console_Input() throws IOException
	{
		System.out.print("\ninput data:\n > ");
		Console console = System.console();
		if (console == null)
		{
			System.out.println("can not use the console.");
			return;
		}
		System.out.println("4. Console读取方式:\t" + console.readLine());
	}

}

 

1
0
分享到:
评论

相关推荐

    Java中从命令控制台输入数据的几种常用方法

    本文将详细介绍几种常用的在Java中从命令控制台输入数据的方法,包括直接使用`System.in`、使用`java.util.Scanner`类、使用`java.io.BufferedReader`类以及利用图形用户界面(GUI)组件进行输入。 ### 1. 使用`...

    引用 Java中从命令控制台输入数据的几种常用方法.doc

    Java中从命令控制台输入数据的几种常用方法 在 Java 编程中,从命令控制台输入数据是非常常见的操作。下面将介绍三种常用的方法来从命令控制台输入数据。 方法一:使用标准输入流对象 System.in System.in 是 ...

    Java从控制台读入数据的几种方法

    Console是Java中的一个常用类,用于读取控制台输入。使用Console可以读取控制台输入,下面是一个使用Console实现控制台输入的示例代码: ```java public class TestConsole3 { public static void main(String[] ...

    Java中从控制台读取输入的方法.docx

    总结来说,Java 中从控制台读取输入的方法有多种选择,可以根据具体需求和环境选择合适的方法。`BufferedReader` 更适合简单的文本输入,`Scanner` 更加灵活,支持多种数据类型的解析,而 `Console` 则适用于需要...

    在Java中从命令控制台输入数据的一些常用方法.doc

    ### Java中从命令控制台输入数据的常用方法 在Java编程中,经常需要从命令行控制台接收用户的输入。这可以通过多种方式实现,包括使用`System.in`、`Scanner`类、`BufferedReader`类等。下面将详细介绍这些方法及其...

    java的数据输入:从控制台输入数据借鉴.pdf

    读取控制台输入的基本用法如下: ```java Console console = System.console(); if (console != null) { String input = console.readLine(); } ``` 在控制台输入数据时,我们还需要注意以下几点: - 控制台...

    Java应用程序——控制台输入[归类].pdf

    `System.console()`方法可以返回一个`Console`对象,如果可用,这个对象提供了直接的控制台输入和输出功能,不过这些功能在非交互式环境中可能不可用。 1.4 总结 控制台输入是Java应用程序的基础,`Scanner`类是...

    常用技巧 Java开发 从控制台输出数据

    System.out.printf()方法是 Java 中另一种控制台输出方法,该方法可以进行格式化输出,功能类似于 C 语言中的 printf()函数。使用 System.out.printf()方法可以根据需要输出不同类型的数据,例如字符串、字符、整型...

    常用技巧 Java开发 从控制台读入数据

    在Java开发过程中,从控制台读取用户输入的数据是一项基础且重要的技能。下面将详细介绍两种主要的方法,分别适用于JDK1.4及以下版本和JDK1.5及以上版本。 1. JDK1.4及以下版本从控制台读入数据的方法: 在早期的...

    Java中控制台的输入与输出.pdf

    首先,Java中的控制台输入主要依赖于`java.io`包中的`BufferedReader`类。在给出的例子中,通过`BufferedReader`的构造函数与`InputStreamReader`相结合,我们可以创建一个从标准输入通道(通常是键盘)读取数据的...

    go代码-golang 控制台的输入输出

    总结一下,Go语言通过`fmt`包提供了丰富的控制台输入输出功能,包括`Println`、`Printf`用于输出,`Scan`、`Scanf`和`Scanln`用于输入。了解和熟练使用这些函数是编写Go语言控制台应用程序的基础。在实际编程中,...

    js代码-控制台的输入和输出

    本文将深入探讨JavaScript中的控制台操作,包括控制台输出(console.log())和控制台输入(prompt()及读取文件)。 ### 控制台输出:console.log() `console.log()` 是JavaScript中最常用的控制台输出方法,用于...

    控制台应用程序定向输入和输出C++源代码程序小实例

    在C++编程中,控制台应用程序是通过标准输入(stdin)、标准输出(stdout)和标准错误(stderr)进行数据交互的基础形式。定向输入和输出是指将这些标准流重定向到文件或其他设备,使得数据不再仅限于从键盘输入或到...

    个性C#控制台筛子游戏

    例如,`Console.WriteLine()`用于在控制台上打印信息,`Console.ReadKey()`则用于读取用户的键盘输入。开发者在实现这个游戏时,可能运用了循环、条件判断、随机数生成等基础编程概念。 1. **循环结构**:游戏的...

    易语言源码易语言控制台处理源码.rar

    1. **输入输出**:易语言提供了“读整数”、“读字符”等函数用于获取用户在控制台输入的数据,而“显示”函数则用来在控制台上打印信息。开发者可以利用这些函数实现简单的交互式程序。 2. **控制台控制**:除了...

    .net控制台设置程序,可以设置控制台的字体颜色、背景和标题等。

    在.NET框架中,控制台应用程序是开发人员常用的一种方式,用于创建命令行界面的应用。本文将深入探讨如何利用.NET来定制控制台的显示属性,包括字体颜色、背景色以及标题等,以帮助开发者创建更加个性化的控制台应用...

    VC控制台改变颜色

    在VC(Visual C++)编程环境中,控制台的颜色设置是一个常用的功能,可以帮助程序员在调试代码时提高可读性和视觉效果。下面将详细解释如何在VC控制台中改变颜色,并给出相应的代码示例。 首先,VC控制台的颜色设置...

    C#从控制台读取字符串的方法

    在C#编程语言中,从控制台读取用户输入的字符串是常见的交互方式,这对于创建命令行应用程序尤其重要。...这仅仅是开始,随着对C#的进一步学习,你会发现更多关于控制台输入/输出的高级用法和技巧。

    Java中关于控制台读取数字或字符串的方法

    例如,如果你在控制台输入`123`,`System.in.read()`只会读取第一个字符`1`,其ASCII值为49,所以当你打印这个值时,你会看到49。同样,如果你输入`abc`,它会读取第一个字符`a`,其ASCII值为97,因此输出97。需要...

Global site tag (gtag.js) - Google Analytics