首先,我们要有一个.txt文件,每一行中的元素个数是相同的(因为每一行中的每一个元素就代表了一种类型的属性值),文尾已奉上,读者自行下载。有的就不用下载了,
然后,,,
代码如下,具体的就不细讲了
import java.io.*;
import java.util.ArrayList;
/**
* Created by Administrator on 2016/10/20.
*/
public class dataMinner {
public static void main(String[] args) throws IOException {
FileReader reader = new FileReader("E:\\50words_TRAIN.txt");
BufferedReader br = new BufferedReader(reader);
StringBuffer sb = new StringBuffer("");
String str=null;
str=br.readLine();
String str2=str;
String[] attributes = str.split(",");
while((str=br.readLine())!=null){
sb.append(str+"\r\n");
}
br.close();
reader.close();
FileWriter writer = new FileWriter("E:\\50words_TRAIN.arff");
BufferedWriter bw = new BufferedWriter(writer);
bw.write("@relation"+" "+"test"+"\r\n");
for(int i = 0;i<attributes.length;i++){
bw.write("@attribute"+" "+"attribute"+i+" "+"numeric"+"\r\n");
}
bw.write("@data"+"\r\n");
bw.write(str2+"\r\n");
bw.write(sb.toString());
bw.close();
writer.close();
}
}
在此需注意的是java中换行符的表示是 \r\n ,而不是 \n ,因为windows不能识别 \n