1,键盘输入时,如何把各种类型分开,赋值给相应变量,例:想输入姓名(string),学号(string),java分数(int),本人用想用System.in.read();但输入 “张三 10086 95”不知如何判断把张三赋值给name,把10086赋值给xuehao,就是说不知道如何判断分隔符;
2,利用输出流把姓名(string),学号(string),java分数(int)信息输入进txt文档时,如何把一条条数据隔开,然后读入时如何做到;
题目:现在想利用输入流输出五个人的信息(string),学号(string),java分数(int)到student.txt中,五个人的信息是从键盘输入,然后利用输入流从student.txt中读取这些数据,想读第几学生的什么信息就能读什么信息;
能看懂问题解决下问题,我感觉说的比较不容易理解,所以把题目贴出来,要是看不懂我问题,直接给出解题代码,我从中自己理解,下面是我的代码:
代码没写完,写到从键盘读入时,遇到问题1,写不下去,然后想象用构造方法已经得到数据,然后写出到文档中,又遇到问题2,看不懂问题可以看代码中的注释,本人阐述问题有缺陷,大家见谅 public class Student{
private String name,xuehao;
private int javascore;
public void setname(String a)
{
this.name=a;
}
public String getName() {
return name;
}
...//省略为变量的set,get方法
pulbic class void main(String args[])
{
char a;
double average,sum=0;
int i;
file f=new file("student.txt");
fileInputstream fis1=new fileInputstream(f);
DateInputstream dis1=new DateInputstream(fis1);
for(i=0;i<5;i++)
{
Student stu[i]=new Student();
inread();
stu[i].setname();
sum=sum+stu[i];
dis1.writeString(stu[i].name); //往student.txt写数据时不知道如何设置分隔符,然后读时能区分分隔符
}
average=sum/5.0; void inread()
{
System.out.println("请输入学生姓名,学号,分数,中间用逗号隔开,输完请按!结束");
a=(char)System.in.read();
while(a!='!')
//从键盘读数据试也不知道如何区分分隔符,就是不知道咋样判断name数据已经完了,接下来的是xuehao数据;
{
}
}
}}
2,利用输出流把姓名(string),学号(string),java分数(int)信息输入进txt文档时,如何把一条条数据隔开,然后读入时如何做到;
题目:现在想利用输入流输出五个人的信息(string),学号(string),java分数(int)到student.txt中,五个人的信息是从键盘输入,然后利用输入流从student.txt中读取这些数据,想读第几学生的什么信息就能读什么信息;
能看懂问题解决下问题,我感觉说的比较不容易理解,所以把题目贴出来,要是看不懂我问题,直接给出解题代码,我从中自己理解,下面是我的代码:
代码没写完,写到从键盘读入时,遇到问题1,写不下去,然后想象用构造方法已经得到数据,然后写出到文档中,又遇到问题2,看不懂问题可以看代码中的注释,本人阐述问题有缺陷,大家见谅 public class Student{
private String name,xuehao;
private int javascore;
public void setname(String a)
{
this.name=a;
}
public String getName() {
return name;
}
...//省略为变量的set,get方法
pulbic class void main(String args[])
{
char a;
double average,sum=0;
int i;
file f=new file("student.txt");
fileInputstream fis1=new fileInputstream(f);
DateInputstream dis1=new DateInputstream(fis1);
for(i=0;i<5;i++)
{
Student stu[i]=new Student();
inread();
stu[i].setname();
sum=sum+stu[i];
dis1.writeString(stu[i].name); //往student.txt写数据时不知道如何设置分隔符,然后读时能区分分隔符
}
average=sum/5.0; void inread()
{
System.out.println("请输入学生姓名,学号,分数,中间用逗号隔开,输完请按!结束");
a=(char)System.in.read();
while(a!='!')
//从键盘读数据试也不知道如何区分分隔符,就是不知道咋样判断name数据已经完了,接下来的是xuehao数据;
{
}
}
}}
从控制台输入到文件 最好用下面这种方式 BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new FileWriter("c:/sysin.txt"));
String str ;
while (null != (str = br.readLine())) {
if (!"exit".equals(str)) {
//.............处理...........
bw.write(str,0,str.length());
} else {
System.out.println("Exit Success!");
break;
}
}
br.close();
bw.close();