不多说,直接上干货!
第一种方法
PWDemo.java
package zhouls.bigdata.DataFeatureSelection.filter; import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter; /**
* PW处理其他流
* @author adminitartor
*
*/
public class PWDemo {
public static void main(String[] args) throws IOException {
/*
* 向文件pw1.txt中写出内容
*/
FileOutputStream fos
= new FileOutputStream("pw1.txt");
/*
* PrintWriter构造方法传入字节流的话,
* 不能指定字符集。
*/
// PrintWriter pw
// = new PrintWriter(fos);
/*
* 若希望指定字符集,需要在中间使用
* OutputStreamWriter
*/
OutputStreamWriter osw
= new OutputStreamWriter(fos,"GBK");
PrintWriter pw
= new PrintWriter(osw); pw.println("啦啦啦");
pw.println("哈哈哈");
System.out.println("写出完毕!");
pw.close();
}
}
/*
* 接下来是输出流
*/
FileOutputStream fos = new FileOutputStream("F:\\datamode\\SnortEveryAttributesSimData.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos,"GBK");
PrintWriter pw = new PrintWriter(osw);
for(int i=;i<sdms.size();i++){
pw.println("按时间升序且计算每个属性相似度后的第"+i+"条数据是"+":"+sdms.get(i));
}
System.out.println("写出完毕!");
pw.close();
第二种方法
字符流FileWriter
FileWriterDemo.java(涉及到换行和续写)
package zhouls.bigdata.DataFeatureSelection.test; import java.io.FileWriter;
import java.io.IOException; //需求:将一些文字存储到硬盘一个文件中。 public class FileWriterDemo {
private static final String LINE_SEPARATOR = System.getProperty("line.separator");
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
//创建一个可以往文件中写入字符数据的字符输出流对象。
/*
* 既然是往一个文件中写入文字数据,那么在创建对象时,就必须明确该文件(用于存储数据的目的地)。
* 如果文件不存在,则会自动创建。
* 如果文件存在,则会被覆盖。
* 如果构造函数中加入true,可以实现对文件进行续写!
*/
FileWriter fw = new FileWriter("demo.txt",true);
/*
* 调用Writer对象中的write(string)方法,写入数据。
* 其实数据写入到临时存储缓冲区中。
*/
fw.write("abcde"+LINE_SEPARATOR+"hahaha");//LINE_SEPARATOR是换行符
fw.write("xixi"); //进行刷新,将数据直接写到目的地中。 注意:flush可以用多次。
fw.flush(); //关闭流,关闭资源。在关闭前会先调用flush刷新缓冲中的数据到目的地。 注意:close可以用多次。
fw.close();
}
}