Java基础回顾 : 打印流和扫描流

原创 2016年05月31日 13:05:06

由于OutputStream、Writer 类实现内容输出时操作并不方便 .

 所以IO包提供了两个专门用于输出的操作类:PrintStreamPrintWriter。前者是字节流操作、后者是字符流操作 .

PrintStream类的构造方法 : public PrintStream(OutputStream out)

如果要想进行文件的输出,使用的是FileOutputStream、FileWriter 子类。在PrintStream 类之中提供了一系列的输出方法:print()、println()。

eg : 打印流的示例 :

package example;

import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintStream;

/**
 * 打印流
 */

public class TestDemo {
	public static void main(String[] args) throws Exception {
		File file = new File("e:\\test.txt");
		if(file.exists()) {
			PrintStream out = new PrintStream(new FileOutputStream(file));
			String name = "Monica" ;
			int age = 20 ;
			double score = 10.5 ;
			out.println("姓名 :" + name + ",年龄:" + age + " ,分数:" + score);
			out.println(100);
			out.println(200.5);
			//格式化输出 :
			out.format("姓名:%s,年龄:%d,分数:%5.2f", name,age,score);
			out.close();
		}
	}

}
▲ . 上面的例子中用到一个格式化输出的方法 .

从JDK 1.5 开始,PrintStream 类增加了新的支持 —— 格式化输出
public PrintStream format(String format, Object... args)
格式化需要一些标记:
├ . · 字符串:%s;
├ . · 整型数据:%d;
├ . · 小数:%m.nf。


======================================================================================================================


同样的为了读取数据的方便 , 自从JDK1.5之后 , 增加一个新的功能类 : java.util.Scanner类 .

Scanner类的构造方法 : public Scanner(InputStream source)

根据其构造方法可以为传入一个InputStream流来实例化Scanner类 .

eg : 扫描流的示例 :

package example;

import java.io.File;
import java.io.FileInputStream;
import java.util.Scanner;

/**
 * 扫描流
 */

public class TestDemo {
	public static void main(String[] args) throws Exception {
		File file = new File("e:\\test.txt");
		if(file.exists()) {
			Scanner scan = new Scanner(new FileInputStream(file),"utf-8");
			//使用换行符作为分隔符("\n"),默认的情况下使用的空格或者换行符
			scan.useDelimiter("\n");
			while(scan.hasNext()) {
				System.out.print(scan.next());
			}
			scan.close();
		}
	}

}
▲ . 使用Scanner 操作文件的读取是非常方便的,但是一定要考虑好分隔符的问题。

Scanner 类还可以方便的进行键盘数据的接收,如果现在要想由键盘输入数据,则可以利用System.in完成。

eg : 

package example;

import java.util.Scanner;

/**
 * 扫描流
 */

public class TestDemo {
	public static void main(String[] args) throws Exception {
		Scanner scan = new Scanner(System.in);
		//使用换行符作为分隔符("\n"),默认的情况下使用的空格或者换行符
		scan.useDelimiter("\n");
		System.out.print("请输入内容:");
		if(scan.hasNext()) {
			System.out.print("输入内容为:" + scan.next());
		}
		scan.close();
	}

}

★ . 具体的方法请查阅API.
版权声明:本文为博主原创文章,未经博主允许不得转载。

Java_IO流_File类总结(扫描某个盘的全部内容)

在Java中,Everything is Object!所以在文件中,要不例外! 在Java中,可以用File类来表示一个文件!!!(注意这里的文件可以是所有文件,包括文件夹) 下面的...

Java基础回顾_IO流_File简单操作

package IO流; import java.io.File; import java.io.IOException; public class File的操作 { /** * Fil...

java基础回顾笔记-io流1

第一部分:一些对象的使用 system对象中可通过getProperties方法获取Propety对象,从而获取系统属性。Runtime,每个java应用程序都有一个Runtime实例,使应用程序能...

《Java高手真经_编程基础卷:Java核心编程技术》(JAVA开发专家)扫描版[PDF]

编辑推荐 本书详细讲解Java语言基础开发中的各种技术,主要内容包括如下。   ·Java开发入门:JDK、JVM、Eclipse、Linux。   ·Java语法基础:类、抽象类、接口、内...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java基础回顾 : 打印流和扫描流
举报原因:
原因补充:

(最多只允许输入30个字)