首先,我們要有一個.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