黑马程序员技术交流社区
标题:
IO
[打印本页]
作者:
刘邦m
时间:
2019-4-4 14:34
标题:
IO
package day09;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class Dame3CharExercise {
public static void main(String[] args) throws IOException {
/*请用户从控制台输入信息,程序将信息存储到文件Info.txt中。
可以输入多条信息,每条信息存储一行。
当用户输入:”886”时,程序结束。*/
FileWriter fw = new FileWriter("F:\\JavaTemp\\Info.txt");
// infoInputChar(fw);
//统计test.txt文件中’a’字符出现的次数
FileInputStream fis = new FileInputStream("F:\\JavaTemp\\a.txt");
char c='a';
// statistics(fis, c);
/*从控制台循环接收用户录入的学生信息,输入格式为:学号-学生名字
将学生信息保存到D盘下面的stu.txt文件中,一个学生信息占据一行数据。
当用户输入end时停止输入。*/
FileOutputStream fos = new FileOutputStream("F:\\JavaTemp\\stu.txt");
infoInputByte(fos);
}
private static void infoInputByte(FileOutputStream fos) throws IOException {
Scanner sc = new Scanner(System.in);
while(true){
System.out.println("请输入学生的信息,格式:学号-姓名(结束录入end)");
String str=sc.next();
if(! str.equals("end")){
byte[] bytes = str.getBytes();
fos.write(bytes);
fos.write("\r\n".getBytes());
}else{
break;
}
}
fos.flush();
fos.close();
}
//信息存储(字符流)
private static void infoInputChar(FileWriter fw) throws IOException {
Scanner sc= new Scanner(System.in);
boolean b=true;
while(b){
System.out.println("你可以多次输入字符串,当你输入字符串886时输入结束:");
String str=sc.next();
if( ! str.equals("886")){
fw.write(str+"\r\n");
}else{
b=false;
}
}
fw.flush();
fw.close();
}
//统计(字节流)
private static void statistics(FileInputStream fis, char c) throws IOException {
int count=0, len=0;
while((len=fis.read()) != -1){
if(len=='a'){
count++;
}
}
System.out.println(c+"在文件中出现了"+count+"次");
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2