* 1.创建一个FileOutputStream打印到指定文件中
* 2.创建一个打印支持类,支持各类数据转字符串
* 3.在打印支持类中创建一个打印方法,提供字符串转换成字节数组写入到OutputStream
* 4.关闭流
* @author Administrator
*
*/
class PrintUtil { //输出支持类
private OutputStream output; //打印到指定文件
public PrintUtil(OutputStream output) { //从外部定义文件输出流
this.output = output;
}
public void print(String str) {
try {
this.output.write(str.getBytes()); //字符串转字节数组后写入到输出流
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//各基本类型转字符串
public void println(String str) {
this.println(str);
}
public void print(int data) {
this.print(String.valueOf(data));
}
public void println(int data) {
this.println(String.valueOf(data));
}
public void print(double data) {
this.print(String.valueOf(data));
}
public void println(double data) {
this.println(String.valueOf(data));
}
public void close() throws IOException {
this.output.close();
}
}
class TestDemo {
public static void main(String[] args) throws IOException {
//创建一个File输出流,作为PrintUtil方法的参数
File file = new File("E:" + File.separator + "aaa" + File.separator + "ab.txt");
OutputStream output = new FileOutputStream(file);
PrintUtil pu = new PrintUtil(output);
pu.print("姓名");
pu.print(18);
pu.close();
// PrintWriter pu = new PrintWriter(new FileOutputStream(new File("E:" + File.separator + "aaa" + File.separator + "ab.txt")));
}
}
import java.io.*;
/**
* 从键盘读取打印数据(字符)
* @author Administrator
*
*/
class TestDemo {
public static void main(String[] args) throws IOException {
// OutputStream out = System.out;
// out.write("社会主义好".getBytes());
InputStream input = System.in; //键盘输入
ByteArrayOutputStream bos = new ByteArrayOutputStream();
System.out.print("请输入信息:");
byte[] bt = new byte[1]; //每次读取1字节
int temp = 0;
while((temp = input.read(bt)) != -1) { //每次写入1字节
if(new String(bt).equals("\n")) { //如果bt中存在'\n',程序结束
break;
}
bos.write(bt);
} //ByteArrayOutputStream.toByteArray,创建当前大小的字节数组并把缓冲区内容复制到当中
System.out.println("信息为:" + new String(bos.toByteArray()));
}
}
/**
* 从键盘读取打印数据(字节)
* @author Administrator
*
*/
class TestDemo {
public static void main(String[] args) throws IOException {
// OutputStream out = System.out;
// out.write("社会主义好".getBytes());
StringBuffer buf = new StringBuffer();
InputStream input = System.in; //键盘输入
ByteArrayOutputStream bos = new ByteArrayOutputStream();
System.out.print("请输入信息:");
int temp = 0;
while((temp = input.read()) != -1) { //每次写入1字节
if(temp == '\n') {
break;
}
buf.append((char)temp); //字节拼接成字符串
} //ByteArrayOutputStream.toByteArray,创建当前大小的字节数组
System.out.println("信息为:" + buf);
}
}
/**
* 仅从键盘以行读取打印数据(字符)
* @author Administrator
*
*/
class TestDemo {
public static void main(String[] args) throws IOException {
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入信息:");
String str = buf.readLine();
System.out.println("信息为:" + str);
}
}
import java.io.IOException;
import java.util.Scanner;
/**
* 仅从键盘以行读取打印数据(字符)
* @author Administrator
*
*/
class TestDemo {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
System.out.print("请输入名字:");
if(sc.hasNext()) {
String name = sc.next();
System.out.println("名字为:" + name);
}
System.out.print("请输入生日:");
if(sc.hasNext("\\d{4}-\\d{2}-\\d{2}")) {
String birthday = sc.next();
System.out.println("生日为:" + birthday);
}
sc.close();
}
}
import java.io.*;
/**
* Scanner应用
*/
import java.util.Scanner;
class TestDemo {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(new FileInputStream(new File("C:\\Users\\Administrator\\Desktop\\java_get.txt")));
sc.useDelimiter("\n");
while(sc.hasNext()) {
System.out.print(sc.next());
}
sc.close();
}
}