从键盘录入内容,并把内容保存到文件中。
只输入一行数据:
package 复习_HomeWork;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
public class file2 {
// 从键盘录入内容,并把内容保存到文件中。
public static void main(String[] args) throws IOException {
System.out.println("请输入一些数据");
Scanner scanner=new Scanner(System.in);
String n=scanner.next();
FileOutputStream fos=new FileOutputStream("D:\\Java测试\\d.txt");
fos.write(n.getBytes());
fos.close();
}
}
输入多行数据:
/思路:
* 想好写入的文件是那个
* 再者判断文件是否存在,或新建
* 准备工作完成后,准备写东西
* 写东西是要加TRUE,否者你写的前一个东西会被替换掉,最后只剩一个
* 因为你是多行操作,所以要想好下一行怎么办——nextLine()
* 也要以一个数据进行结束/
package 复习_HomeWork;
import java.io.*;
import java.io.File;
import java.util.Scanner;
public class file2 {
// 从键盘录入内容,并把内容保存到文件中。
public static void main(String[] args) throws IOException {
File f=new File("D:\\Java测试\\保存写入.txt");
//判断该文件路径是否存在
if(f.getAbsoluteFile().exists()){
//不存在,创建文件
if(!f.exists())
f.createNewFile();
}
//准备写入数据
Scanner sc=new Scanner(System.in);
//提示用语
System.out.println("加载成功,请开始你的操作");
System.out.println("请输入你的数据,结束请输入end");
//注意分行
String s=sc.nextLine();
//以end结束
while(!s.endsWith("end")){
FileOutputStream fos=new FileOutputStream("D:\\Java测试\\保存写入.txt",true);
//两次转换
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter bw=new BufferedWriter(osw);
//先把东西写入文件
bw.write(s);
bw.newLine();
bw.close();
//再次接收键盘录入
System.out.print("请继续输出你要录入的内容:");
s=sc.nextLine();
}
System.out.println("结束");
}
}
老师写的简单的算法:
package 复习_HomeWork;
import java.io.*;
import java.io.File;
import java.util.Scanner;
public class file2 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
String str = null ;
FileWriter fw = new FileWriter("c:\\javas\\kk\\Text_2_3.txt");
BufferedWriter bw = new BufferedWriter(fw);
while(true) {
str=sc.next();
if(str.equals("end"))
break;
bw.write(str);
bw.newLine();
bw.flush();
}
bw.close();
}