не помогло, дает тот же результат. Пример, фаил у меня такой:
1,nimi,Arvo,string
2,nimi,Jaan,string
1,vanus,18,integer
2,vanus,20,integer
1,pikkus,185,integer
2,isikukood,38410122641,string
1,amet,3,uri
1,amet,4,uri
2,amet,5,uri
3,nimi,ehitaja,string
4,nimi,valvur,string
5,nimi,valvur,string
3,palk,15000,integer
4,palk,6000,integer
5,palk,2000,integer
1,omab,7,uri
2,omab,10,uri
7,tyyp,auto,string
7,mark,ford
7,hind,200000,integer
10,tyyp,maja,string
10,hind,2000000,integer
1,omab,autod.csv#2,uri
2,omab,autod.csv#1,uri
Обоими способами в исходящий фаил выходит только
1
nimi
Arvo
String
и все!
вот полный код:
import java.io.*;
import java.util.*;
public class ioproov1 {
public static void main(String[] args) {
String sourceName;
String copyName;
if (args.length == 2) {
sourceName = args[0];
copyName = args[1];
}
else {
System.out.println("Usage: java ioproov <source-file> <copy-name>");
return;
}
File file = new File(copyName);
if (file.exists()) {
System.out.println("Output file exists. Exiting.");
return;
}
try {
FileReader file_reader = new FileReader(sourceName);
FileWriter file_writer = new FileWriter(copyName);
BufferedReader br_reader = new BufferedReader(file_reader);
PrintWriter pr_writer = new PrintWriter(file_writer);
String line = br_reader.readLine();
StringTokenizer t=new StringTokenizer(line,",");
while (line != null) {
while(t.hasMoreTokens()) {
line=t.nextToken();
pr_writer.print(line+" ");
}
// get next line of input file
line = br_reader.readLine();
} // while loop
file_reader.close();
file_writer.close();
} //try
catch (IOException e) {
System.out.println(e);
System.exit(1);
}
}
}
а еще я хотел бы поместить слова из фаила в отдельный массив words[n][4] - n-столбцов фаила и 4-количество слов в строке(всегда 4). Куда фор вставлять, если не делать промежуточный фаил, а сразу из сурсного фаила писать в массив?
Сообщение изменено: OzzY (30 сентября 2006 - 20:23 )