JAVA从键盘输入信息,然后保存至文件text.txt中, 求指点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA从键盘输入信息,然后保存至文件text.txt中, 求指点相关的知识,希望对你有一定的参考价值。
//从键盘输入内容至文件;
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));//读键盘输入
FileWriter fout=new FileWriter("text.txt",true);
String str="";
while((str=stdin.readLine())!="\n")
System.out.println(str);
fout.write(str);
fout.close();
//结果:显示
Exception in thread "main" java.io.FileNotFoundException: text1.txt (拒绝访问。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.io.FileInputStream.<init>(FileInputStream.java:97)
at java.io.FileReader.<init>(FileReader.java:58)
at test.main(test.java:14)
其次,while的条件有问题,String类型不能用 ==或者 !=来判断,要用 equals来判断。
错误的判断会导致程序走不到 close()方法,而你不调用 flush()方法内容就会留在缓冲区而写不到文件中,如果这时候你再次创建一个新的FileWirter来写这个文件,就会报拒绝访问的错误。 参考技术A 如果在win下出现,那么你的文件是只读的,不允许写,如果是在linux下请检查文件权限。追问
WIN下,canWrite属性为True;
参考技术B 要建立一个file的路径,然后写进去Java从键盘上输入与输出
1 问题
以作业题三题为例,需要输入学生的成绩等级,然后反映出相应等级的成绩范围。直接在程序里面写出学生等级的方法不利于做出一些改变,在逻辑上也不符合常理,所以选择设置程序从键盘输入等级然后反馈出相应的成绩范围。
2 方法
这个程序需要先引用Scanner类,Scanner cin = new Scanner(Scanner.in)这一句语句是为了从键盘接收数据,System.out.println(“请输入等级:”)这一句是next方式接收字符串,if语句是判断是否还有输入,然后就是定义n,令n = 从键盘输入的一个字符串,在这里由于我们题目的一个特殊性,所以我们必须采用nextLine而不能采用next,因为nextLine是配合字符串使用的,next则是配合整数使用的,接下来,因为需要判断n是否是相应的等级A、B、C、D,所以只能使用switch…case这个语句,因为if、if…else、else if这几个语句需要满足布尔表达式,只有switch可以满足我们的需求,比较键盘的输入之后,正确的就输出,不正确的就跳过。
import java.util.Scanner; public class 键盘输入 public static void main(String[] args) Scanner cin = new Scanner(System.in); System.out.println("请输入等级:"); if(cin.hasNextLine()) String n = cin.nextLine(); switch (n) case "A": System.out.println("85分以上(包括85分)"); break; case "B": System.out.println("70分以上(包括70分)"); break; case "C": System.out.println("60分以上(包括60)"); break; case "D": System.out.println("60分以下"); break; |
3 结语
针对Java从键盘上输入与输出问题,提出使用Scanner类方法,通过Scanner类实验,证明该方法是有效的,本文的方法相对于其他的一些方法可能会有一点冗长,应用了Scanner类的方法,可能会相对比较复杂,但是此程序拥有大的延展性,可以对此程序有更多的一些拓展与延伸,在此后希望对此程序进行缩短,简化,或者对此程序进行更大的拓展与延伸,使其更加高级化。
以上是关于JAVA从键盘输入信息,然后保存至文件text.txt中, 求指点的主要内容,如果未能解决你的问题,请参考以下文章
Unity3D中,如何把图像文件保存为数组并通过输入键盘信息调用?