Java的输入
<span style="font-size:14px;">import java.util.Scanner;
public class Test {
public static void main(String args []){
Scanner input=new Scanner(System.in);
System.out.println("输入整数:");
int a=input.nextInt();
System.out.println("输入实数:");
double b=input.nextDouble();
System.out.println("输入字符不含空格的字符串:");
String c=input.next();//识别空格
input.nextLine();//nextLine会读回车
System.out.println("输入字符串:");
String str=input.nextLine();
System.out.println("输入整数:"+a);
System.out.println("输入实数:"+b);
System.out.println("输入字符:"+c);
System.out.println("输入字符串:"+str);
input.close();
}
}</span>
字节流
InputStream,OutputStream都是抽象类,他们的子类分别是FileInputStream,FileOutputStream
Off是偏移量,从数组第几位开始存,len读多少数据,返回值是总共读取了多少字节的数据
from.txt里面是abcd
打印结果是ASCII码形式:97 98 99 100 0 0 0 。。。。。。
要想变成字符串的形式:
String s=new String(buffer);
System.out.println(s);
s.trim();//String的方法,可以消除字符串的首位(空字符和空格)
将from.txt的内容放到to.txt中
import java.io.*;
public class Test {
public static void main(String args[]){
FileInputStream fis=null;
FileOutputStream fos=null;
try{
fis=new FileInputStream("C:/Users/Administrator/Desktop/from.txt");//相当于一个输入流管子
fos=new FileOutputStream("C:/Users/Administrator/Desktop/to.txt");
byte[] buffer=new byte[100];
//将from.txt里的内容以100字节的形式逐渐写到to.txt
while(true){
int num=fis.read(buffer, 0, buffer.length);
if(num==-1){
break;
}
fos.write(buffer,0,num);
}
}
catch(Exception e){
System.out.println(e);
}
finally{
try{
fis.close();//关闭管道,也必须有异常处理,否则会出错。
fos.close();
}
catch(Exception e){
System.out.println(e);
}
}
}
字符流
刚刚说字节流,读写文件时以字符为基础,字符流以字符为基础。
同字节流的使用方法相似。
import java.io.*;
public class Testchar {
public static void main(String args[]){
FileReader fr=null;
FileWriter fw=null;
try{
fr=new FileReader("C:/Users/Administrator/Desktop/from.txt");
fw=new FileWriter("C:/Users/Administrator/Desktop/to.txt");
char[] str=new char[100];
while(true){
int num=fr.read(str,0,str.length);
if(num==-1){
break;
}
fw.write(str,0,num);
}
}
catch(Exception e){
System.out.println(e);
}
finally{
try{
fr.close();
fw.close();
}
catch(Exception e){
System.out.println(e);
}
}
}
BufferedReader介绍
FileReader fileReader=null;
BufferedReader bufferedReader=null;
try{
fileReader=new FileReader("C:/Users/Administrator/Desktop/from.txt");//节点流
bufferedReader=new BufferedReader(fileReader);//处理流,对节点流进行处理,使其拥有更多功能
String line=null;
while(true){
line=bufferedReader.readLine();
if(line==null){
break;
}
System.out.println(line);
}
}
catch(Exception e){
System.out.println(e);
}
finally{
try{
fileReader.close();
bufferedReader.close();
}
catch(Exception e){
System.out.println(e);
}
}